基于国产软硬件平台的数字地图显示策略

2015-04-20 02:28黄利民柯希林
测绘科学与工程 2015年3期
关键词:数字地图龙芯瓦片

黄利民,张 德,柯希林

1.西安测绘研究所,陕西 西安,710054;2.地理信息工程国家重点实验室,陕西 西安,710054



基于国产软硬件平台的数字地图显示策略

黄利民1,2,张 德1,2,柯希林1,2

1.西安测绘研究所,陕西 西安,710054;2.地理信息工程国家重点实验室,陕西 西安,710054

推进国产软硬件平台应用,是国家战略和信息安全的需要。本文简介了国产软硬件平台的发展情况,针对基于该平台矢量地图显示及漫游慢的问题,开展了国产软硬件性能测试、矢量地图显示各环节时间分布测试和矢量地图显示性能优化试验,证实主要原因是国产CPU的性能低。为此,提出了显示瓦片地图的应用新模式,并对瓦片地图模式下如何实现查询量算和地图分析等问题提出了解决办法,从而实现国产软硬件平台上数字地图的实用化。

国产软硬件;数字地图;瓦片地图;显示

1 引 言

2006年,国家把“核心电子器件、高端通用芯片及基础软件”(即基础软硬件平台,简称“核高基”)确立为国家重大专项之一[1,2]。“核高基”是21世纪电子信息产业国际竞争的制高点,是体现强国地位的重要标志,对于提升我国电子信息产业核心竞争力至关重要[3];同时,基础软硬件平台事关国家信息安全,不仅有助于消除我国电子政务、国防等方面的安全隐患,更有利于改变我国一直以来在信息安全领域的被动局面,其重大意义不言而喻[4,5]。目前,我国在自主可控基础软硬件产品研发方面取得了一定的进展:在高端通用芯片方面,自主研发了龙芯 3号系列CPU等处理器;在基础软件方面,已基于开源软件成功开发出中标麒麟操作系统、达梦数据库等软件[6]。

数字地图,特别是具有精确坐标和控制点的数字地图,是国家的重要保密资源,理应运行在自主可控的国产软硬件平台上。本文基于国产软硬件平台介绍了数字地图显示中遇到的问题,通过测试和优化试验,分析了基于国产平台数字地图显示和漫游缓慢的原因,最后提出了数字地图应用新模式。

2 基于国产软硬件平台数字地图显示问题

数字地图显示选用了国产软硬件平台中的龙芯CPU、中标麒麟操作系统和达梦数据库,即龙芯+麒麟+达梦,这是国产软硬件平台的典型应用模式之一。

龙芯CPU由中国科学院计算技术所研制,其中较为先进且稳定成熟的是龙芯3A处理器,采用65nm 工艺,4核,主频为900MHz~1GHz。麒麟(Kylin)操作系统由国防科技大学研制,是首家通过公安部计算机信息系统安全产品质量监督检查中心第四级结构化保护级检测、也是目前国内安全等级最高的操作系统[6]。达梦数据库是武汉达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,其最新版本为7.0,简称DM7。

数字地图显示一般有3种模式:一是单机模式,软件、地理数据全部安装在1台计算机;二是局域网的客户机/服务器模式(即C/S模式),地理数据安装在服务器上,软件安装在计算机终端;三是网络浏览服务模式(即B/S模式),地理数据和软件均安装在数据中心的服务器上,通过浏览器显示地图。基于微软操作系统+x86 平台,第一、二种模式数字地图显示时通常直接调用矢量地图进行显示。矢量地图具有存储数据量小、可随意调整显示的地图要素以及可用于地形分析等优点。第三种模式由于通过网络提供服务,考虑网络速度慢的因素,数字地图显示一般调用数据中心的瓦片地图进行显示。瓦片地图需专门制作,分为多级,和矢量地图相比,存储数据量较大,但计算机终端单次显示瓦片地图时因只需要这一级的当前区域数据,其数据量很小,从而实现流畅显示的效果。利用瓦片地图显示其实质采用了“空间换时间”的技术策略。本文研究的是第一、二种模式的数字地图显示策略。

在国产软硬件环境下,计算机运行性能比x86+微软操作系统平台下慢5~10倍[7]。单机或局域网模式下的矢量地图显示速度究竟如何?笔者进行了试验。

(1)测试环境

●龙芯+Kylin+DM:龙芯3A 四核 2GHz,内存 4G,Kylin3.2,DM7

●X86+Kylin+DM: Intel Q9500 四核2.83GHz,内存 2G,Kylin3.2,DM7

(2)测试及结果

矢量地图显示速度一般包括2个重要性能指标,一是首次调用并显示一幅地图的时间;二是地图漫游时间。一般一幅中等密度1∶5万矢量地图首次调用并显示时间:≤3秒为较好,≤5秒为可用,>5秒为可用性差;一幅中等密度1∶5万矢量地图进行二维漫游1/3幅面显示平均时间:≤1秒为较好,≤3秒为可用,>3秒为可用性差。

为了论证在国产环境下的矢量地图显示时间,基于X86+Kylin+DM、龙芯+Kylin+DM进行了对比测试,测试数据为一幅1∶5万矢量地图,地图要素密度为中等,经20次测试,平均测试时间见表1。

表1 一幅矢量地图首次调用并显示时间测试(单位:s)

时间龙芯+Kylin+DMx86+Kylin+DM单机环境6.8212.682客户机/服务器网络环境9.5724.752

测试结果表明,基于X86+Kylin+DM,首次调用并显示一幅地图的时间在单机环境可达到较好要求,在客户机/服务器网络环境可达到可用要求;基于龙芯+Kylin+DM,首次调用并显示一幅地图的时间在单机环境或客户机/服务器网络环境均大于5秒,属于可用性差范围。

另外,笔者也对地图漫游时间进行了测试,测试表明:单机显示屏幕分辨率为1024*768,基于X86+Kylin+DM,无论单机环境或客户机/服务器网络环境,一幅1∶5万矢量地图进行二维漫游1/3幅面显示时间均小于2秒,为可用;基于龙芯+Kylin+DM,无论单机环境或客户机/服务器网络环境,一幅1∶5万矢量地图进行二维漫游1/3幅面显示时间均大于5秒,可用性差。

3 数字地图显示问题分析

从上面的数字地图显示测试可知,基于龙芯+Kylin+DM,无论单机环境或客户机/服务器网络环境,首次调用并显示一幅地图的时间均大于5秒,漫游1/3地图幅面显示时间均大于5秒,为可用性差范围。为了深入分析显示慢的原因,笔者进行了更为细致的测试。

测试环境为:

●龙芯+ Kylin:龙芯3A 四核 2GHz,内存 4G,Kylin 3.2

●X86+ Kylin: Intel Q9500 四核 2.83GHz,内存 2G,Kylin 3.2

●X86+windows: Intel Q9500 四核2.83GHz,内存 2G windows xp

3.1 性能对比测试

先用冒泡排序算法对随机生成的一组浮点数进行排序,测试CPU计算性能,试验结果见表2。

表2 浮点数排序时间测试(单位:s)

个数龙芯+Kylinx86+KylinX86+Windows1万8.5800000.8900000.2350005万222.70000022.2900005.64000010万892.54000089.12000022.672000

再用冒泡排序算法对随机生成的一组整数进行排序,测试CPU计算性能,试验结果见表3。

表3 整数排序时间测试(单位:s)

个数龙芯+Kylinx86+KylinX86+Windows1万4.7400000.4000000.1710005万121.92000010.2600004.40600010万491.90000041.11000017.625000

从测试结果分析,操作系统同为Kylin,龙芯平台浮点数运算需要的时间约为X86平台浮点运算时间的10倍,整数运算时间的12倍;硬件平台同为X86,Kylin操作系统下浮点数运算时间约为windows操作系统下浮点数运算时间的4倍,整数运算时间的2.3倍。由此可见,操作系统相同(均为Kylin),龙芯平台和X86平台的计算性能相差10倍以上;而硬件平台相同(同为X86),操作系统Kylin和windows 环境的计算性能相差为2~4倍。由此可见,不同平台下计算能力的差别主要是由硬件CPU的性能引起。

3.2 矢量地图显示时间分布测试

矢量地图显示主要包括数据访问调用、地图符号化显示、地图注记显示等环节。测试环境为单机的龙芯+Kylin和x86+Kylin,测试数据为一幅1:5万矢量地图,地图要素密度为中等,经20次测试,矢量地图显示各环节平均测试时间见表4。

表4 单机环境矢量地图显示各环节时间分布测试(单位:s)

从测试结果可知,在这两种环境下,地图符号化显示所用时间均为最多,约占总时间的40%~50%;显示所用时间从多到少的顺序均为地图符号化显示、数据访问调用和地图注记显示,且这三个环节所用时间占总时间的比例基本相当。

4 国产软硬件环境数字地图的显示新模式

4.1 矢量地图显示性能优化试验

充分发挥龙芯CPU的多核多线程能力是提升矢量地图显示性能的有效途径,为此进行了优化试验,把矢量地图显示分解为界面线程、数据查询线程、图形绘制线程(多个)。

界面线程负责当前显示范围的缩放与漫游调整,以及处理贴图、绘制网格线等不占时间的绘制操作,避免阻塞控制。

数据查询线程负责从文件或数据库中查询出待绘制的数据内容,同时对数据进行符号搭配等处理,转换成绘制所需要的中间结果后放入产品队列,再由绘制线程从产品队列中取出数据进行绘制。将数据查询线程从绘制线程中分离出来,可避免由于多个绘制线程同时对数据访问带来的状态竞争。

图形绘制线程可按两种方式进行多线程处理,一是按“片”多线程处理;二是按“层”多线程处理。

(1)按“片”多线程处理:将显示内容按照指定大小打好格子,不同格子交由不同的线程来处理,从中心向周边逐块绘制每个格子中的地图内容并显示,如图1所示。

图1 按“片”多线程显示矢量地图

(2)按“层”多线程处理:将二维绘制中点、线、面要素分离到独立的线程中,各自完成相应的要素绘制后将绘制结果交由显示线程,由显示线程负责将相应的结果按顺序叠加显示,如图2所示。图3为全部内容显示完后的结果。

图2 按“层”多线程显示矢量地图

图3 矢量地图全部显示的效果

通过优化试验可知,多线程显示机制可使矢量地图显示的响应时间明显提高,即用户不用长久等待,显示屏很快就有图形显示出来,但矢量地图全部显示完成的总时间变化不大。分析其原因,主要是因为前期划分为多线程时需耗费较多时间,虽然后期采用多线程减少了时间,前后时间相抵,总时间变化不大。由此可见,基于当前国产软硬件平台矢量地图显示速度还不能达到可用的水平。

4.2 数字地图显示新模式

通过对国产软硬件环境的性能测试和矢量地图显示性能测试及优化试验可知,如国产CPU性能不提升,矢量地图显示效率还不能达到可用的水平。既然如此,只有寻找一种新的国产软硬件环境下的数字地图显示模式。网络服务模式中的瓦片地图显示是一种可考虑的方式,从理论上分析是可行的。为此,笔者对单机和局域网环境下的瓦片地图显示效率进行试验。

瓦片地图是指将配置好的一定坐标范围的地图,按照固定的若干个比例尺(瓦片级别)和指定图片尺寸,切成若干行及列的正方形图片,以指定的格式保存成图像文件,按一定的命名规则和组织方式存储到文件系统中或是数据库系统里,形成金字塔模型的静态地图。瓦片地图金字塔模型是一种多分辨率层次模型,从瓦片金字塔的底层到顶层,分辨率越来越低,但表示的地理范围不变[8]。根据瓦片地图原始数据的来源可分为矢量瓦片地图、专题图瓦片地图等。

测试环境为:龙芯+Kylin+DM:龙芯3A 四核 2GHz,内存 4G,Kylin3.2,DM7

试验数据为16幅1∶5万地图范围的矢量瓦片,数据采用瓦片金字塔模型组织。

试验结果表明,一幅瓦片地图首次调用并显示时间≤2秒,二维漫游1/3幅面显示时间≤1秒,均为较好水平,可以满足地图显示与漫游的指标要求。

瓦片地图虽然具有单次显示所需数据量小因而显示速度快的优点,但它也具有总数据量大、显示图层不能任意调整、不能用于查询量算和地形分析等缺点。那么,在单机和局域网环境下采用瓦片地图显示模式后如何满足用户的需求呢?这主要涉及以下几个问题:(1)瓦片地图从哪里来?(2)用户如需对显示图层进行调整,怎么办?(3)如何满足用户对查询量算的需求?(4)如何满足用户对地形分析的需求?

在采用瓦片地图显示的模式下,瓦片地图主要有两种来源:一是瓦片地图将作为一种数字地图产品,可直接配发或购买;二是用户软件具有瓦片地图制作功能,用户可根据需求自己制作瓦片地图,特别是一些专题图,只能自行制作。如用户对显示的地图图层有调整的需求,这种地图列入专题图范畴,先由后台人员预先制作成瓦片地图。对于用户在查询量算和地形分析方面的需求,可在瓦片地图后台部署矢量地图,利用矢量地图进行查询量算或地形分析后再返回到前台进行显示,从而实现相关功能。

5 结束语

本文针对国产软硬件平台上单机环境和客户机/服务器网络环境矢量地图显示及漫游速度慢、可用性差的问题,进行了原因分析,开展了国产软硬件性能测试、矢量地图显示各环节时间分布测试和矢量地图显示性能优化试验,通过性能测试和优化试验,证实矢量地图显示速度慢的主要原因是国产CPU的性能低;为此,提出了在单机环境和客户机/服务器网络环境显示瓦片地图的应用新模式,并对由此产生的瓦片地图从哪里来、显示图层调整、查询量算和地形分析问题,提出了解决办法,从而实现了国产软硬件平台上地图显示的实用化。

[1]国务院.国家中长期科学和技术发展规划纲要(2006-2020年)[S].2006.

[2]科技部.国家“十二五”科学和技术发展规划[S].2006.

[3]国家科技重大专项.核心电子器件、高端通用芯片及基础软件产品专项[S].2009.

[4]胡晓荷.院士为我国基础部件国产化率低“号脉”[J].信息安全与通信保密,2011(5):22-24.

[5]徐婧,姜禾,张勐.自主可控的基础软硬件平台将产生重大突破[J].中国科学院期刊,2013,28(5):605-607.

[6]程健,吴蔚.国产化计算平台在指挥控制系统中的应用研究[J].自动化与信息工程,2011(3):41-44.

[7]唐伟广,文义红.国产软硬件环境下图像组织浏览构件设计[J].计算机与网络,2013(3):86-88.

[8]黄梦龙. 瓦片地图技术在桌面端GIS中的应用[J]. 地理空间信息,2011,9(4):149-151.

Display Strategy of Digital Map Based on Home Software and Hardware Platform

Huang Limin1,2, Zhang De1,2, Ke Xilin1,2

1. Xi’an Research Institute of Surveying and Mapping, Xi’an 710054,China 2. State Key Laboratory of Geo-information Engineering, Xi’an 710054,China

It is the requirement of state strategy and information safety to promote the application of home software and hardware platform. This paper briefly introduces the development of home software and hardware platform. Based on the problem of slow speed in traditional vector map displaying and roaming, the paper conducts the experiments on home software and hardware capacity, time distribution of every aspect in map display and vector map display capacity optimization. The experiments show that the main cause of slowness is poor performance in CPU. Therefore the paper puts forward a new application mode of tile map display and the solutions to deal with the information query, map measurement and map analysis. Thus it realizes the practicability of digital map based on the home software and hardware platform.

home software and hardware; digital map; tile map; display

2015-04-19。

黄利民(1968—),男,高级工程师,主要从事数字地图应用方面的研究。

P

A

猜你喜欢
数字地图龙芯瓦片
基于国产化龙芯的动环数据采集系统
打水漂
一种基于主题时空价值的服务器端瓦片缓存算法
数字地图在绿化市容行业中的应用分析
惯性
对车辆自定位特征的评估
“龙芯之父”胡伟武
一种用于辅助驾驶的传感器融合数字地图系统
龙芯发布新一代处理器产品
“龙芯1号”:电脑中国“芯”