留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

全球电离层模型的OpenMP多线程并行解算

王成 施闯 章红平

王成, 施闯, 章红平. 全球电离层模型的OpenMP多线程并行解算[J]. 武汉大学学报 ● 信息科学版, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
引用本文: 王成, 施闯, 章红平. 全球电离层模型的OpenMP多线程并行解算[J]. 武汉大学学报 ● 信息科学版, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
WANG Cheng, SHI Chuang, ZHANG Hongping. Multithreaded Parallel Estimation for Global Ionospheric Model by Using OpenMP[J]. Geomatics and Information Science of Wuhan University, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
Citation: WANG Cheng, SHI Chuang, ZHANG Hongping. Multithreaded Parallel Estimation for Global Ionospheric Model by Using OpenMP[J]. Geomatics and Information Science of Wuhan University, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223

全球电离层模型的OpenMP多线程并行解算

doi: 10.13203/j.whugis20150223
基金项目: 

国家杰出青年科学基金 41325015

国家863重点项目 2014AA123100

国家自然科学基金 41274049

详细信息
    作者简介:

    王成, 博士, 主要从事电离层模型研究。acex@foxmail.com

  • 中图分类号: P228

Multithreaded Parallel Estimation for Global Ionospheric Model by Using OpenMP

Funds: 

The National Outstanding Youth Science Fund Project 41325015

the National 863 Program of China 2014AA123100

the National Natural Science Foundation of China 41274049

More Information
    Author Bio:

    WANG Cheng, PhD, specializes in ionosphere model. E-mail: acex@foxmail.com

  • 摘要: 探讨了OpenMP多线程技术在全球电离层建模中的应用。在日固地磁参考系下采用15阶次的球谐展开建立全球电离层模型,并对1天解、3天解两种方案的结果与IGS电离层产品进行了对比,电离层图偏差的均方根约3~5 TECU,且3天解的方案首尾两组电离层图与IGS产品符合得更好;卫星差分码偏差和接收机差分码偏差与IGS的差异分别约为0.2 ns和2 ns,仅有少数几个接收机差分码偏差在少数几天与IGS差异较大,超过3~4 ns。实验中使用Dell服务器R730(配置:128 GB内存、2个CPU、8个核心和32个线程数),采用OpenMP多线程并行计算能够明显提高全球电离层模型的建模效率,单天解算仅需约7 min,3天解算需约22 min,效率提升近8倍。使用3 d观测数据并采用OpenMP多线程并行计算来建立全球电离层模型可有效节省建模时间,同时还能提高首尾两组模型系数的精度以进一步提升全球电离层模型的精度,对建模算法的测试、电离层产品的快速发布以及模型后续检验和预测等带来了便利,也为后续实现利用多卫星导航系统观测数据快速建立全球电离层模型提供了参考。
  • 图  1  2000-2014年GNSS台站数量

    Figure  1.  Number of GNSS Stations from 2000-2014

    图  2  OpenMP多线程并行模式示意图

    Figure  2.  Diagram of Multi threaded Parallel Mode of OpenMP

    图  3  1天解的卫星DCB与IGS之间的差异

    Figure  3.  Difference of Satellite DCB Between Results of 1-day Solution with IGS Product

    图  4  3天解的卫星DCB与IGS之间的差异

    Figure  4.  Difference of Satellite DCB Between Results of 3-day Solution with IGS Product

    图  5  1天解的接收机DCB与IGS之间的差异

    Figure  5.  Difference of Receiver DCB Between Results of 1-day Solution with IGS Product

    图  6  3天解的接收机DCB与IGS之间的差异

    Figure  6.  Difference of Receiver DCB Between Results of 3-day Solution with IGS Product

    图  7  不同解算方案下的TEC图与IGS之间的差异

    Figure  7.  Difference of TEC Maps Between Results of Different Solutions with IGS Product

    图  8  不同线程数时两种方案所消耗的时间

    Figure  8.  Time Consumption of Two Schemes with Different Number of Threads

    表  1  不同线程数时两种方案所消耗的时间/min

    Table  1.   Time Consumption of Two Schemes with Different Number of Threads/min

    方案 线程数
    1 2 4 8 16 24 32 48 64
    1 d解 55.95 28.84 15.83 9.53 7.16 7.44 8.55 8.17 8.74
    3 d解 167.51 86.41 46.26 27.77 22.22 26.00 30.81 28.45 31.17
    下载: 导出CSV
  • [1] 李征航, 张小红.卫星导航定位新技术及高精度数据处理方法[M].武汉:武汉大学出版社, 2009

    Li Zhenghang, Zhang Xiaohong. New Techniques and Precise Data Processing Methods of Satellite Navigation and Positioning[M]. Wuhan:Wuhan University Press, 2009
    [2] 袁运斌. 基于GPS的电离层监测及延迟改正理论与方法的研究[D]. 武汉: 中国科学院测量与地球物理研究所, 2002

    Yuan Yunbin. Study on Theories and Methods of Correcting Ionospheric Delay and Monitoring Ionosphere Based on GPS[D]. Wuhan: Institute of Geo-desy and Geophysics, Chinese Academy of Sciences, 2002
    [3] 章红平. 基于地基GPS的中国区域电离层监测与延迟改正研究[D]. 上海: 中国科学院上海天文台, 2006

    Zhang Hongping. Study on Monitoring Ionosphere and Correcting Ionospheric Delay in China by Ground-Based GPS[D]. Shanghai: Shanghai Astronomic Observatory, Chinese Academy of Sciences, 2006
    [4] 章红平, 施闯, 唐卫明.地基GPS区域电离层多项式模型与硬件延迟统一解算分析[J].武汉大学学报·信息科学版, 2008, 33(8):805-809 http://ch.whu.edu.cn/CN/abstract/abstract1686.shtml

    Zhang Hongping, Shi Chuang, Tang Weiming. United Solution to Polynomial VTEC Modeling and DCB Analysis Using Ground-based GPS Observations[J]. Geomatics and Information Science of Wuhan University, 2008, 33(8):805-809 http://ch.whu.edu.cn/CN/abstract/abstract1686.shtml
    [5] 袁运斌, 欧吉坤.广义三角级数函数电离层延迟模型[J].自然科学进展, 2005, 15(8):1015-1019 http://www.cnki.com.cn/Article/CJFDTOTAL-ZKJZ200508021.htm

    Yuan Yunbin, Ou Jikun. Ionospheric Delay Model Using Generalized Trigonometric Series Function[J]. Progress in Natural Science , 2005, 15(8):1015-1019 http://www.cnki.com.cn/Article/CJFDTOTAL-ZKJZ200508021.htm
    [6] 柳景斌, 王泽民, 王海军, 等.利用球冠谐分析方法和GPS数据建立中国区域电离层TEC模型[J].武汉大学学报·信息科学版, 2008, 33(8):792-795, 814 http://ch.whu.edu.cn/CN/abstract/abstract1682.shtml

    Liu Jingbin, Wang Zemin, Wang Haijun, et al. Modeling Regional Ionosphere Using GPS Measurements over China by Spherical Cap Harmonic Analysis Methodology[J]. Geomatics and Information Science of Wuhan University, 2008, 33(8):792-795, 814 http://ch.whu.edu.cn/CN/abstract/abstract1682.shtml
    [7] 李子申. GNSS/Compass电离层时延修正及TEC监测理论与方法研究[D]. 北京: 中国科学院大学, 2012

    Li Zishen. Study on the Mitigation of Ionospheric Delay and the Monitoring of Global Ionospheric TEC Based on GNSS/Compass[D]. Beijing: University of Chinese Academy of Sciences, 2012
    [8] 王刚, 魏子卿.格网电离层延迟模型的建立方法与试算结果[J].测绘通报, 2000(9):1-2 http://www.cqvip.com/QK/93318X/200009/4526860.html

    Wang Gang, Wei Ziqing. A Method and Results of Setting up Grid Ionospheric Delay Model[J]. Bulletin of Surveying and Mapping, 2009(9):1-2 http://www.cqvip.com/QK/93318X/200009/4526860.html
    [9] Hernandez-Pajares M, Juan J M, Sanz J, et al. The IGS VTEC Maps:A Reliable Source of Ionospheric Information Since 1998[J]. J Geod, 2008, 83:263-275 doi:  10.1007/s00190-008-0266-1
    [10] 袁运斌, 欧吉坤.利用IGS的GPS资料确定全球电离层TEC的初步结果与分析[J].自然科学进展, 2003, 13(8):885-888 http://www.cqvip.com/qk/96531A/200308/8116014.html

    Yuan Yunbin, Ou Jikun. Preliminary Results and Analysis of Global Ionospheric TEC by GPS Measurements from IGS[J]. Progress in Natural Science, 2003, 13(8):885-888 http://www.cqvip.com/qk/96531A/200308/8116014.html
    [11] 耿长江. 利用地基GNSS数据实时监测电离层延迟理论与方法研究[D]. 武汉: 武汉大学, 2011

    Gen Changjiang. Theory and Method on Real Time Monitoring of Ionospheric Delay Using Ground Based GNSS Data[D]. Wuhan: Wuhan University, 2011
    [12] 章红平, 韩文慧, 黄玲, 等.地基GNSS全球电离层延迟建模[J].武汉大学学报·信息科学版, 2012, 37(10):1186-1189 http://ch.whu.edu.cn/CN/abstract/abstract355.shtml

    Zhang Hongping, Han Wenhui, Huang Ling, et al. Modeling Global Ionospheric Delay with IGS Ground-Based GNSS Observations[J]. Geomatics and Information Science of Wuhan University, 2012, 37(10):1186-1189 http://ch.whu.edu.cn/CN/abstract/abstract355.shtml
    [13] 陈鹏, 陈家君. 多源数据融合的全球电离层格网模型建立[C]. 第四届中国卫星导航学术年会, 武汉, 2013

    Chen Peng, Chen Jiajun. Global Ionospheric Grid Modeling Using GNSS and Space-Based Observations[C]. China Satellite Navigation Conference (CSNC) 2013 Proceedings, Wuhan, 2013
    [14] 王成, 王解先, 段兵兵.附有国际参考电离层约束的全球电离层模型[J].武汉大学学报·信息科学版, 2014, 39(11):1340-1346 http://ch.whu.edu.cn/CN/abstract/abstract3121.shtml

    Wang Cheng, Wang Jiexian, Duan bingbing. Global Ionospheric Model with International Reference Ionosphere Constraint[J]. Geomatics and Information Science of Wuhan University, 2014, 39(11):1340-1346 http://ch.whu.edu.cn/CN/abstract/abstract3121.shtml
    [15] 张强, 章红平, 赵齐乐, 等.利用最小二乘配置预报全球电离层总电子含量[J].大地测量与地球动力学, 2014, 34(6):86-91 http://www.cqvip.com/QK/95685A/201406/663663581.html

    Zhang Qiang, Zhang Hongping, Zhao Qile, et al. Global Ionospheric TEC Prediction Based on Least-Square Collocation Method[J]. Journal of Geodesy and Geodynamics, 2014, 34(6):86-91 http://www.cqvip.com/QK/95685A/201406/663663581.html
    [16] 党亚民, 王虎, 赵文娇, 等.融合BDS/GPS/GLONASS反演全球电离层特性研究[J].大地测量与地球动力学, 2015, 35(1):87-91 http://cpfd.cnki.com.cn/Article/CPFDTOTAL-WXDH201305001029.htm

    Dang Yamin, Wang Hu, Zhao Wenjiao, et al. Research of the Characteristics of Inversing Global Io-nospheric with Fusing of BDS, GPS and GLONASS[J]. Journal of Geodesy and Geodynamics, 2015, 35(1):87-91 http://cpfd.cnki.com.cn/Article/CPFDTOTAL-WXDH201305001029.htm
    [17] 高广辉, 王小亚, 吴斌. GPS全球电离层TEC的并行算法建模及初步结果分析[J].中国科学院上海天文台年刊, 2011, 32:35-44 https://www.cnki.com.cn/qikan-KXTW201100007.html

    Gao Guanghui, Wang Xiaoya, Wu Bin. Global Ionospheric Modeling Using GPS Data with Prallel Algorithms[J]. Annual of Shanghai Astronomical Observatory, CAS, 2011, 32:35-44 https://www.cnki.com.cn/qikan-KXTW201100007.html
    [18] 罗秋明. OpenMP编译原理及实现技术[M].北京:清华大学出版社, 2012

    Luo Qiuming. Compilation Principle and Implementation Technology of OpenMP[M]. Beijing:Tsinghua University Press, 2012
    [19] Schaer S. GNSS Inosphere Analysis at CODE[C]. 2004 IGS Workshop, Berne, Switzerland, 2004
    [20] Global Ionosphere Maps Produced by CODE[EB/OL]. http://aiuws.unibe.ch/ionosphere, 2012
  • [1] 李涌涛, 赵昂, 李建文, 车通宇, 潘林, 陈晨.  单站区域电离层TEC建模及精度分析 . 武汉大学学报 ● 信息科学版, 2022, 47(1): 69-78. doi: 10.13203/j.whugis20190286
    [2] 李涌涛, 李建文, 魏绒绒, 师一帅, 张硕, 车通宇.  全球电离层TEC格网时空变化特性分析 . 武汉大学学报 ● 信息科学版, 2020, 45(5): 776-783. doi: 10.13203/j.whugis20180431
    [3] 钟何平, 唐劲松, 张森, 田振.  共享内存环境下的分块最小不连续相位解缠算法 . 武汉大学学报 ● 信息科学版, 2018, 43(9): 1385-1390. doi: 10.13203/j.whugis20160373
    [4] 施闯, 王成, 张涛.  基于超算的全球电离层模型快速并行解算 . 武汉大学学报 ● 信息科学版, 2018, 43(12): 2093-2098. doi: 10.13203/j.whugis20180114
    [5] 王成, 毛大智, 施闯, 章红平.  全球电离层模型的分布式并行解算 . 武汉大学学报 ● 信息科学版, 2018, 43(8): 1207-1213. doi: 10.13203/j.whugis20160274
    [6] 张强, 赵齐乐.  OpenMP并行计算在全球电离层反演中的应用 . 武汉大学学报 ● 信息科学版, 2018, 43(2): 227-233, 240. doi: 10.13203/j.whugis20160065
    [7] 沈迎春, 闫昊明, 彭鹏, 白希选, 田代恒.  质量负荷引起地表形变的格林函数和球谐函数方法对比研究 . 武汉大学学报 ● 信息科学版, 2017, 42(7): 1008-1014. doi: 10.13203/j.whugis20150201
    [8] 王成, 施闯, 段兵兵, 刘晓莉.  利用位置与云计算建立电离层TEC主动式播发平台 . 武汉大学学报 ● 信息科学版, 2016, 41(3): 304-309. doi: 10.13203/j.whugis20130307
    [9] 谢益炳, 伍吉仓, 陈俊平, 刘伟洲.  GPS和GLONASS组合的全球实测电离层TEC建模 . 武汉大学学报 ● 信息科学版, 2014, 39(8): 930-934. doi: 10.13203/j.whugis20130128
    [10] 曾艳艳, 于锦海, 万晓云.  任意球冠下Stokes-Neumman混合边值问题的球谐函数有限逼近方法 . 武汉大学学报 ● 信息科学版, 2014, 39(1): 65-69.
    [11] 谢益炳, 陈俊平, 伍吉仓, 胡丛玮.  不同约束条件对电离层电子含量和硬件延迟的影响 . 武汉大学学报 ● 信息科学版, 2014, 39(7): 799-803.
    [12] 王成, 王解先, 段兵兵.  附有国际参考电离层约束的全球电离层模型 . 武汉大学学报 ● 信息科学版, 2014, 39(11): 1340-1346.
    [13] 唐龙, 张小红.  利用北斗GEO卫星观测数据探测中尺度电离层行波扰动 . 武汉大学学报 ● 信息科学版, 2013, 38(12): 1409-1412.
    [14] 汤俊, 姚宜斌, 陈鹏, 张顺.  利用EMD方法改进电离层TEC预报模型 . 武汉大学学报 ● 信息科学版, 2013, 38(4): 408-411.
    [15] 王建强, 李建成, 王正涛, 赵国强.  球谐函数变换快速计算扰动引力 . 武汉大学学报 ● 信息科学版, 2013, 38(9): 1039-1043.
    [16] 李拥, 李朝奎, 吴柏燕, 殷智慧.  一种采用OpenMP技术的3DGIS并行绘制模型 . 武汉大学学报 ● 信息科学版, 2013, 38(12): 1495-1498.
    [17] 章红平, 韩文慧, 黄玲, 耿长江.  地基GNSS全球电离层延迟建模 . 武汉大学学报 ● 信息科学版, 2012, 37(10): 1186-1189.
    [18] 陈鹏, 姚宜斌, 吴寒.  利用时间序列分析预报电离层TEC . 武汉大学学报 ● 信息科学版, 2011, 36(3): 267-270.
    [19] 李征航, 陈锴, 刘万科, 黄欢.  顾及f~3项的电离层延迟模型 . 武汉大学学报 ● 信息科学版, 2007, 32(2): 139-143.
    [20] 蔡昌盛, 高井祥, 李征航.  利用GPS监测电离层总电子含量的季节性变化 . 武汉大学学报 ● 信息科学版, 2006, 31(5): 451-453.
  • 加载中
图(8) / 表(1)
计量
  • 文章访问数:  749
  • HTML全文浏览量:  51
  • PDF下载量:  415
  • 被引次数: 0
出版历程
  • 收稿日期:  2015-12-24
  • 刊出日期:  2018-06-05

全球电离层模型的OpenMP多线程并行解算

doi: 10.13203/j.whugis20150223
    基金项目:

    国家杰出青年科学基金 41325015

    国家863重点项目 2014AA123100

    国家自然科学基金 41274049

    作者简介:

    王成, 博士, 主要从事电离层模型研究。acex@foxmail.com

  • 中图分类号: P228

摘要: 探讨了OpenMP多线程技术在全球电离层建模中的应用。在日固地磁参考系下采用15阶次的球谐展开建立全球电离层模型,并对1天解、3天解两种方案的结果与IGS电离层产品进行了对比,电离层图偏差的均方根约3~5 TECU,且3天解的方案首尾两组电离层图与IGS产品符合得更好;卫星差分码偏差和接收机差分码偏差与IGS的差异分别约为0.2 ns和2 ns,仅有少数几个接收机差分码偏差在少数几天与IGS差异较大,超过3~4 ns。实验中使用Dell服务器R730(配置:128 GB内存、2个CPU、8个核心和32个线程数),采用OpenMP多线程并行计算能够明显提高全球电离层模型的建模效率,单天解算仅需约7 min,3天解算需约22 min,效率提升近8倍。使用3 d观测数据并采用OpenMP多线程并行计算来建立全球电离层模型可有效节省建模时间,同时还能提高首尾两组模型系数的精度以进一步提升全球电离层模型的精度,对建模算法的测试、电离层产品的快速发布以及模型后续检验和预测等带来了便利,也为后续实现利用多卫星导航系统观测数据快速建立全球电离层模型提供了参考。

English Abstract

王成, 施闯, 章红平. 全球电离层模型的OpenMP多线程并行解算[J]. 武汉大学学报 ● 信息科学版, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
引用本文: 王成, 施闯, 章红平. 全球电离层模型的OpenMP多线程并行解算[J]. 武汉大学学报 ● 信息科学版, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
WANG Cheng, SHI Chuang, ZHANG Hongping. Multithreaded Parallel Estimation for Global Ionospheric Model by Using OpenMP[J]. Geomatics and Information Science of Wuhan University, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
Citation: WANG Cheng, SHI Chuang, ZHANG Hongping. Multithreaded Parallel Estimation for Global Ionospheric Model by Using OpenMP[J]. Geomatics and Information Science of Wuhan University, 2018, 43(6): 813-819. doi: 10.13203/j.whugis20150223
  • 自以GPS为代表的全球导航卫星系统(global navigation satellite system, GNSS)建成以来,利用GNSS探测电离层已成为电离层研究领域的主要方向之一。利用GNSS能够长期连续监测电离层活动,并成为目前测量电离层总电子含量(total electron content, TEC)精度最高的观测手段[1]。基于GNSS的电离层TEC建模成为大地测量领域电离层研究的热点,电离层TEC相关的数学模型方法得到迅速发展,通过GNSS观测数据提取电离层TEC数据并将其数学函数化,从而获取全球或区域电离层TEC模型,为研究TEC长期变化趋势等电离层物理研究和GNSS信号在电离层延迟改正等方面的应用提供了基础[2-3]。比较常用的电离层TEC模型有多项式模型、球谐模型、三角函数模型、格网模型等[4-8]。IGS电离层工作组自1998年开始已连续10多年发布日常的全球电离层产品,为电离层的研究提供了良好的基础[9]。国内诸多学者对于全球电离层模型的研究亦取得了丰硕的成果,如全球电离层TEC的初步结果与分析[10]、利用地基GNSS实时监测电离层延迟[11]、联合GPS与GLONASS的全球电离层延迟建模[12]、多源数据融合的全球电离层格网模型[13]、附有国际参考电离层约束的全球电离层模型[14]、利用最小二乘配置预报全球电离层总电子含量[15]、融合BDS/GPS/GLONASS反演全球电离层的特性研究[16]等。

    随着GPS、GLONASS、BDS和Galileo的不断完善和发展,近10多年来世界各地建设了越来越多的GNSS台站用于满足日益增长的GNSS在各行业中的应用以及相关科学研究。目前,能够观测到各导航系统(包括GPS、GLONASS、BDS和Galileo)的IGS台站数量如图 1所示。其中,观测GPS的台站达到450个,观测GLONASS的台站大约有300个,观测BDS和Galileo的台站大约各有50个。更多的GNSS观测数据将带来更多的电离层穿刺点信息, 从而有利于进一步提高全球电离层模型的精度。与此同时,较多的观测数据一方面增加了数据处理的时间,另一方面也带来更多的待估参数,从而降低了建模的效率。2011年,高广辉等学者利用全球370多个GPS站观测数据实现了全球电离层TEC的并行算法建模及初步结果分析[17]。通常情况下,如采用1 d的观测数据对全球电离层模型进行解算,由于首尾两组模型系数没有前后两个时段的观测数据导致其精度较低,为了提高精度, 可增加前后各一天共3 d的观测数据进行整体解算。而增加的前后两天的观测数据不仅增加了数据读入的时间,另外也增加了待估参数的个数。为此,本文将在全球电离层建模中应用并行解算方案以提高建模效率, 并同时采用3 d数据建模以进一步提高全球电离层模型的精度。文中将重点分析以下内容:①分别采用1 d和3 d观测数据解算的全球电离层TEC、卫星和接收机的差分码偏差(differential code bias, DCB)的精度; ②两种方案下首尾两组全球电离层TEC数据的对比; ③两种方案在不同线程数下数据处理效率的差异。

    图  1  2000-2014年GNSS台站数量

    Figure 1.  Number of GNSS Stations from 2000-2014

    • 目前主流的操作系统如Windows、Linux、Mac OS对多线程均有较好的支持。Windows环境下,Win32 API提供了多线程应用程序开发所需要的接口函数,微软基础函数类库(microsoft foundation classes, MFC)则是用类库的方式将Win32 API进行封装,以类的方式提供给开发者。而后,微软发展的.NET基础类库中的System.Threading命名空间提供了大量的类和接口支持多线程。在Linux中,POSIX thread(又称为pthread)是一套通用的线程库,定义了有关线程创建和操作的API,并且具有很好的可移植性。而Open Multiprocessing(OpenMP)是一种功能强大的多线程框架,能够支持C、C++、Fortran进行多线程计算。GNU Compiler Collection(GCC)对OpenMP支持较好,而且Windows平台的Visual Studio也支持OpenMP。OpenMP在跨平台的表现良好,而且使用非常方便,很容易将现有的程序改编为支持多线程的计算模式。通常情况下,只需添加用于激活多线程的制导语句即可实现多线程计算,比如在for循环前加上#pragma omp parallel for即可实现多线程计算,更多有关OpenMP的详细内容可参考《OpenMP编译原理及实现技术》[18]一书。相比MFC、.NET和pthread,OpenMP不仅能够跨平台,而且更加容易学习和使用,其多线程并行模式如图 2所示。本文采用OpenMP作为多线程并行计算方案。

      图  2  OpenMP多线程并行模式示意图

      Figure 2.  Diagram of Multi threaded Parallel Mode of OpenMP

    • 本文建立全球电离层模型的基本方法和欧洲定轨中心(Center for Orbit Determination in Europe, CODE)一致,即在日固地磁参考系下用15阶次的球谐展开进行建模,TEC值在时间域内用分段线性函数来表达,所有观测卫星和地面测站的差分码偏差每天各自作为一个常数进行估计[7, 11, 19], 建模的基础理论推导如下。

      GNSS基础观测方程为[1]

      $$P = {\rho _0} + c\left( {\Delta {t_r} - \Delta {t_s}} \right) + T + I + c\left( {{b_r} + {b_s}} \right) + \varepsilon $$ (1)

      式中,P为伪距观测值;ρ0为卫星至接收机的几何距离;c为光速;Δtr为接收机钟差;Δts为卫星钟差;T为对流层延迟;I为电离层延迟;br为接收机硬件延迟;bs为卫星硬件延迟;ε为测量噪声。由式(1)通过双频码观测值差分得:

      $$\begin{array}{l} {P_1} - {P_2} = \frac{{40.3\left( {f_2^2 - f_2^1} \right)}}{{f_1^2f_2^2}}{\rm{STEC}} + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;c({\rm{DC}}{{\rm{B}}_r} + {\rm{DC}}{{\rm{B}}_s}) \end{array}$$ (2)

      式中,f1f2为双频载波相位的频率;STEC(slant TEC)为卫星至接收机信号传播路径上总电子含量;DCBr为接收机差分码偏差;DCBs为卫星差分码偏差。在实际数据处理中,可采用相位平滑伪距以进一步提高双频码差分观测值的精度, 从而可提取更高精度的电离层TEC。

      为了获得电离层总电子含量的时空分布以及电离层对导航卫星信号延迟的影响,通常将电离层TEC的空间分布做一定的假设,比如电离层薄层假设、电离层多层假设。通常采用电离层薄层假设将电离层三维电子密度在高度方向上压缩为一个无限薄的球面,进而对电离层垂直方向上的总电子含量进行建模。本文采用的投影函数与CODE使用的一种改进的单层模型映射函数(modified single-layer model mapping function,MSLM)保持一致,表达式为:

      $$mf\left( z \right) = \frac{1}{{{\rm{cos}}\;z'}},{\rm{sin}}\;z' = \frac{R}{{R + H}}{\rm{sin}}\left( {\alpha z} \right)$$ (3)

      式中,mf为投影函数; z为测站天顶距; R为地球半径; H为假设的电离层薄层高度。当α=0.978 2,H=506.7 km时,该投影函数与美国喷气推进实验室(Jet Propulsion Laboratory, JPL)的扩展板模型(extended slab model,ESM)投影函数符合得最好[20]

      在全球电离层TEC建模中,采用的模型为球谐函数模型[11, 14, 18],表达式为:

      $$ \begin{array}{l} {\rm{VTEC}}\left( {\varphi ,\lambda } \right){\rm{ }} = \sum\limits_{n = 0}^{{n_{{\rm{max}}}}} {} \sum\limits_{{\rm{ }}m = 0}^n {{{\tilde P}_{nm}}({\rm{sin}}\varphi )({a_{nm}}{\rm{cos}}\left( {m\lambda } \right)} + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;{b_{nm}}{\rm{sin}}\left( {m\lambda } \right)) \end{array} $$ (4)

      式中,VTEC为天顶总电子含量; φ为地磁纬度; λ为日固经度; nm为球谐模型的阶次; $\tilde P$nm为标准化勒让德多项式; anmbnm为待求的球谐系数。

      在使用OpenMP多线程并行算法建立全球电离层模型中,需要根据建模的过程按照图 2所示的OpenMP多线程并行模式对任务进行划分,主要任务包含以下几个部分:①GNSS观测数据、星历等文件的下载;②数据预处理(包括剔除观测质量较低的测站数据、周跳探测和相位平滑伪距等);③数据处理(RINEX观测文件的读取、穿刺点位置计算等);④求解法方程,得到球谐模型系数及卫星和接收机DCB。本文在实际数据处理中对前3个主要任务均编制了OpenMP多线程并行算法,使得数据处理效率得到很大提升。其中数据文件下载这个任务与网速有很大关系,多线程并行下载的效率测试暂不纳入到实验中,但在实际建模中确实可有效节省数据处理的时间。本文侧重于分析数据预处理、数据处理这两个主要核心任务来探讨OpenMP多线程并行技术对电离层建模效率的提升情况。其中,在数据预处理过程中,应尽可能将任务平均地分配到各个线程中,以避免某一个线程耗时过多从而影响到建模的总体耗费时间。而第③个主要任务为电离层建模的最核心部分,耗时也最长,关键在于读取RINEX观测文件、计算穿刺点信息以及勒让德多项式并写入法方程矩阵。在对法方程矩阵写入的过程中,需要注意对相关元素进行加锁和解锁操作,否则会得到错误的矩阵元素进而影响建模的结果。

    • 采用2014年1 806 GPS周(年积日为第229~235天)全球分布的280个左右的IGS站GPS观测数据进行全球电离层建模。实验所采用的计算机为Dell服务器R730,与计算效率相关的具体配置为:128 GB内存、2个CPU(共8个核心,32个线程)。为测试OpenMP多线程的性能,分别采用不同的线程数对1 d、3 d的数据进行解算。在实际建模数据处理中,使用分段线性函数来表达TEC随时间的变化,如使用1 d数据进行建模,由于没有使用到前后两个时间段的观测数据, 从而使得首尾两组模型系数的解算精度较其他时段模型系数的精度略低,如采用3 d数据进行建模,那么当天(中间那一天)的所有时段模型系数均有足够的观测数据进行拟合,进而可提高全球电离层建模精度。一般情况下,卫星的DCB变化比较缓慢,3个月内变化不大,设卫星DCB参数在3 d内保持不变可减少求解参数的个数,且并不会影响建模的精度。由于接收机硬件成本远低于卫星,同时受到测站环境影响使得接收机DCB变化较大,而且在实测数据处理中并不能保证各个测站在3 d内均有观测数据。当采用3 d数据进行整体解算时,设卫星的DCB参数在3 d内保持不变,而接收机的DCB则不做此约束,最后仅输出中间一天的全球电离层图作为当天的解算结果。如采用1 d的数据建模,待估参数包括13组球谐系数以及32颗GPS卫星DCB和所有接收机DCB(参数个数:13×256+32+280=3 640);而采用3 d数据一起解算,则前后两天与中间一天零点整时刻共用一组球谐系数,每颗卫星DCB值3 d保持不变,各接收机DCB则每天各自估计一次(参数个数:(12+13+12)×256+32+280×3=10 344)。将不同方案下的实验结果与IGS的电离层产品进行对比,如图 3~7所示。其中图 3图 4分别为1天解和3天解得到的卫星DCB与IGS的差异,图 5图 6分别为1天解和3天解得到的接收机DCB与IGS的差异,图 7展示了1天解、3天解所得的全球电离层图与IGS产品相互之间的差异的均方根以及1天解和3天解在首尾两组的全球TEC图与IGS产品的差异的均方根。其中图 3~6不同颜色的点分别代表了相对应年积日的结果。

      图  3  1天解的卫星DCB与IGS之间的差异

      Figure 3.  Difference of Satellite DCB Between Results of 1-day Solution with IGS Product

      图  4  3天解的卫星DCB与IGS之间的差异

      Figure 4.  Difference of Satellite DCB Between Results of 3-day Solution with IGS Product

      图  5  1天解的接收机DCB与IGS之间的差异

      Figure 5.  Difference of Receiver DCB Between Results of 1-day Solution with IGS Product

      图  6  3天解的接收机DCB与IGS之间的差异

      Figure 6.  Difference of Receiver DCB Between Results of 3-day Solution with IGS Product

      图  7  不同解算方案下的TEC图与IGS之间的差异

      Figure 7.  Difference of TEC Maps Between Results of Different Solutions with IGS Product

      由于采用3 d数据进行建模,一方面卫星DCB参数设为3 d不变使得对应的有效观测数据大量增加,另一方面首尾两组球谐系数的精度提高也有利于提高参数向量中其他参数如卫星DCB的精度, 所以采用3 d数据进行解算有利于提高卫星DCB的精度。而由于接收机DCB在3 d内分别被设为不同的参数,且接收机DCB的量级和不稳定程度较卫星DCB大,所以采用上述方案对于接收机DCB精度的提升并不显著。由图 3图 4可知,本文解算的卫星DCB与IGS电离层产品差异绝大部分在0.2 ns以内。而相对于1天解的方案来说,采用3天解的结果与IGS产品差异的分布更紧凑,3天解方案所得卫星DCB与IGS产品符合得更好。从图 5图 6可知,两种方案解算的接收机DCB与IGS电离层产品的差异绝大部分在2 ns以内,少数几个接收机DCB差异在少数几天超过3~4 ns。如图 7所示,1天解和3天解这两种方案的全球电离层图与IGS电离层产品的差异比较接近(如黑色与红色空心圆),大约为3~5 TECU,两种差异并不十分显著,最大差异小于0.2 TECU,而两种方案的差异如图中橙色空心圆所示,大约为1~2 TECU。故本文将两种方案中最有可能存在较大差异的第一组和最后一组全球TEC图分别与IGS产品进行对比,如图中蓝色和绿色实心圆所示,差异的均方根大约为2~5 TECU,且3天解的方案与IGS产品的差异更小一些。

      为测试OpenMP多线程在全球电离层建模中的性能表现,分别采用线程数为1、2、4、8、16、24、32、48、64个对上述年积日为第229~235天的GPS观测数据进行1天解和3天解的试算,并将一周的解算时间平均得到在不同线程数的情况下两种方案解算所消耗的平均时间见图 8,具体耗时见表 1

      图  8  不同线程数时两种方案所消耗的时间

      Figure 8.  Time Consumption of Two Schemes with Different Number of Threads

      表 1  不同线程数时两种方案所消耗的时间/min

      Table 1.  Time Consumption of Two Schemes with Different Number of Threads/min

      方案 线程数
      1 2 4 8 16 24 32 48 64
      1 d解 55.95 28.84 15.83 9.53 7.16 7.44 8.55 8.17 8.74
      3 d解 167.51 86.41 46.26 27.77 22.22 26.00 30.81 28.45 31.17

      图 8表 1可知,不同线程数的情况下,3天解所消耗的时间基本为1天解的3倍左右,原因主要在于3倍数据量的观测数据值的读取。1天解方案在单线程时需要近1 h才能解算完毕,采用两个线程时所耗时间减少一半(大约0.5 h)。随着线程数的增加,解算时间不再明显减少,直到线程数为16时,所耗时间最少(仅为7 min多)。而后更多线程的情况下,耗时并没有减少反而有少量增加,这是因为更多的线程容易造成CPU资源的争抢, 从而降低了效率。类似的现象在3天解方案也有体现,只是3天解方案的解算过程消耗了更多时间,当采用单线程时耗时近2.8 h,而当线程数设为16时, 耗时仅22 min多。综上所述,当采用多线程对全球电离层模型进行并行解算时,最大能提速近8倍(与CPU核心数一致),大大降低了建模时间,为后续模型的检验以及预测和算法测试等节省了宝贵的时间。

    • 本文采用全球280个左右IGS站的GPS观测数据在日固地磁参考系下用15阶次的球谐展开进行建模,TEC值在时间域内用分段线性函数来表达,并分别采用1天解、3天解两种方案在不同线程数下建立全球电离层模型。通过对两种方案解算的结果与IGS产品比较得知,3天解方案下所获得卫星DCB与IGS产品符合更好,差异大约为0.2 ns,而接收机DCB的差异并不十分显著,与IGS产品的差异绝大部分在2 ns以内,少数几个接收机DCB差异在少数几天超过3~4 ns。两种方案的全球电离层图与IGS电离层产品的差异比较接近,大约为3~5 TECU。但首尾两组电离层TEC图与IGS产品相比则有较为明显的差异,3天解时, 首尾两组电离层图与IGS产品符合效果更好。在采用OpenMP多线程并行解算时,确实能够明显提高建模的效率,单天解算约需7 min多,而3天解算约需22 min多,最大提速近8倍。本文实验测试效率提升的倍数与计算机CPU核心数基本相一致,效率的提升并不能达到与总线程数相同的倍数。在使用笔记本进行多线程测试本文方案时,提升效率并不明显,建议在测试多线程并行计算时采用较高配置的服务器作为测试环境。采用多线程并行解算可有效节省建模时间,对建模算法的测试、电离层产品的快速发布以及模型后续检验和预测等带来了便利。本文仅对利用GPS观测数据建立全球电离层模型的多线程并行解算进行了实验,下一步可考虑采用多导航系统的观测数据建模, 从而实现更快地获取更高精度和可靠性的全球电离层模型。

参考文献 (20)

目录

    /

    返回文章
    返回