学位论文 > 优秀研究生学位论文题录展示

电子光学系统CAD软件高性能计算研究

作 者: 王学波
导 师: 李建清
学 校: 电子科技大学
专 业: 电子科学与技术
关键词: EOS 程序优化 并行计算 高性能计算
分类号: TN12
类 型: 硕士论文
年 份: 2010年
下 载: 31次
引 用: 0次
阅 读: 论文下载
 

内容摘要


微波管CAD软件在进行全三维数值模拟时,需要处理巨大的数据量,模拟计算时间较长,因此对模拟软件的计算性能有很高的要求。本文的主要工作就是优化微波管三维电子光学系统CAD软件“电子光学模拟器”(Electron Optics Simulator,简称EOS)的计算性能。为优化程序的性能,需要了解程序的剖析技术、常用的程序优化技术、内存的优化使用、高速缓存的应用等。另外,程序优化应该具有针对性。在优化之前,首先应该掌握程序的性能瓶颈,即需要利用一定的手段和工具剖析程序,检测程序热点。所谓程序热点,就是指程序中总执行时间程序时间比例较高的几个函数或语句。通过分析EOS程序流程,并利用Microsoft Visual Studio 2005性能分析工具检测程序,找到了EOS程序的热点——在有限元网格中定位电子位置的算法。本文分别按广度优先搜索、深度优先搜素的方式设计了两个定位电子的算法,分别为按有限元网格层次遍历的扫描法和按方向定位的追踪法。同时也给出了这两种算法中用到的辅助算法。同时,对EOS中的其他重要部分也进行了优化,如计算电场电位的函数等。优化过程应用了基本的优化技术,如循环展开、内存的优化使用等,除此之外文中还介绍了大型稀疏矩阵的存储技术。优化之后,首先利用Microsoft Visual Studio 2005性能分析工具检测EOS程序的性能,对比优化前有了显著提高;为了验证优化的效果,用优化前后的EOS分别计算了几个模型,对比发现计算性能确实显著提高。目前多核计算机已经应用到日常科研及生活当中,如果能在EOS程序中实现并行编程,使其充分利用多核并行计算的优势,就能够在现有的条件下显著提高EOS的性能。因此本文介绍了并行计算机体系结构、并行编程模型、并行算法、并行计算性能评测等内容,同时比较了几种并行编程环境的优劣。通过比较发现,OpenMP相对适合在多核环境下实现共享存储的并行编程,并且比较容易掌握。经过测试发现,将简单、计算量大的循环利用OpenMP实现并行化可以得到理想的加速比。最终在EOS中尝试应用OpenMP对计算电子轨迹的过程实现了并行化,并测试得到了其并行效果。

全文目录


摘要  4-5
ABSTRACT  5-10
第一章 引言  10-18
  1.1 微波管CAD 技术的发展趋势  10-11
  1.2 电子光学系统CAD 技术的发展趋势  11-12
  1.3 高性能计算的发展  12-16
    1.3.1 高性能计算国际研究现状和发展趋势  13-15
    1.3.2 并行处理  15-16
  1.4 论文立题背景及主要工作  16-18
第二章 程序优化技术  18-30
  2.1 程序优化基础知识  18-19
    2.1.1 为什么优化  18
    2.1.2 程序优化注意事项  18
    2.1.3 优化的基本规则  18-19
  2.2 程序剖析  19-24
    2.2.1 程序剖析基础  19
    2.2.2 程序剖析工具  19-21
    2.2.3 剖析的对象  21-22
    2.2.4 剖析中存在的问题  22-24
  2.3 优化使用内存  24-27
    2.3.1 循环展开  24-25
    2.3.2 消除数据相关性  25-26
    2.3.3 分裂链表  26
    2.3.4 内存读、写及计算的组合  26-27
  2.4 优化使用高速缓存  27-29
    2.4.1 高速缓存的工作原理  27-28
    2.4.2 处理数据的尺寸及代码块尺寸对性能的影响  28
    2.4.3 二维数组的处理  28-29
  2.5 小结  29-30
第三章 EOS 程序优化  30-52
  3.1 分析检测热点  30-31
  3.2 热点算法设计  31-44
    3.2.1 在二维网格中定位电子  32-36
    3.2.2 二维定位算法中的辅助算法  36-38
    3.2.3 在三维网格中定位电子  38-40
    3.2.4 三维定位算法中的辅助算法  40-44
  3.3 其他优化  44-48
    3.3.1 大型稀疏矩阵存储  44-46
    3.3.2 计算电场电位函数优化  46-48
  3.4 优化前后性能对比  48-51
    3.4.1 二维  48-49
    3.4.2 三维  49
    3.4.3 EOS 程序实际运行时间  49-51
  3.5 小结  51-52
第四章 并行计算  52-65
  4.1 并行计算基础知识  52-54
    4.1.1 并行编程模式  52-53
    4.1.2 并行计算编程模型  53-54
  4.2 并行算法  54-55
    4.2.1 设计并行算法的基本原则  54
    4.2.2 常见并行算法  54-55
  4.3 并行程序环境  55-58
    4.3.1 MPI 消息传递接口  55-56
    4.3.2 HPF 数据并行编程  56
    4.3.3 OpenMP 共享存储并行编程  56-58
  4.4 并行计算性能评测  58-61
    4.4.1 加速比性能定律  59-61
  4.5 在EOS 中利用OpenMP 实现并行  61-64
  4.6 小结  64-65
第五章 总结  65-67
  5.1 主要工作内容  65
  5.2 成果及展望  65-67
    5.2.1 EOS 程序串行优化  65-66
    5.2.2 多核并行编程  66-67
致谢  67-68
参考文献  68-71
攻硕期间取得的研究成果  71-72

相似论文

  1. 一种高性能可扩展公钥密码协处理器的研究与设计,TN918.1
  2. 基于多核计算平台的视频压缩算法研究,TN919.81
  3. 基于GPU的有限元方法研究,O241.82
  4. 射频波注入磁化等离子体的数值模拟,TL612
  5. 新型电网广域后备保护的算法研究,TM774
  6. 保护在线自适应整定的研究,TM77
  7. 过载虚机条件下MPI通信性能改善方法研究,TP302
  8. 基于GPU/CPU多级并行CFD优化策略的研究,V221
  9. 云环境下MapReduce容错技术的研究,TP302.8
  10. 高动态SINS导航解算算法及其并行化研究,TN966
  11. 基于多核SMP集群环境的光线追踪模拟卫星成像并行研究与实现,TP391.41
  12. 图像检索的并行计算方法与系统,TP391.3
  13. GPU加速的粒子滤波PET图像重建算法,TP391.41
  14. 基于GPU的时间序列并行检索算法研究,TP391.41
  15. 基于CPU的源强反算算法研究,TP18
  16. 面向密集数据并行计算的可重构线性阵列处理器架构的设计,TP332
  17. 基于段落指纹的大规模近似网页检测算法研究,TP393.092
  18. 并行与双系统协同差异进化算法及其应用,TP18
  19. 云计算环境下的容错并行Skyline查询技术研究,TP311.13
  20. 基于GPGPU平台的对角线模型问题研究,TP391.41
  21. CUDA加速CV图像分割和外部CT图像重建算法研究,TP391.41

中图分类: > 工业技术 > 无线电电子学、电信技术 > 真空电子技术 > 微波电子管
© 2012 www.xueweilunwen.com