GPU运算在STM模拟中的应用

GPU运算在STM模拟中的应用

论文摘要

近年来,图形处理器(Graphics Processing Unit,GPU)的发展相当迅速,GPU的运算能力及存储带宽均已远远超过目前主流CPU。将GPU作为CPU的协处理器完成大规模数据密集型的计算任务,相对于集群和超级计算机的实现,具有很高性能和性价比。现在,STM在表面科学研究中应用非常广泛,其中对STM图像的理论模拟十分关键。但是做大量图像模拟时,运算量会比较大,耗时较长。因此,本文基于CUDA(Computer Unifie Device Architecture,统一计算设备架构)平台,利用GPU来加速STM图像模拟。同时,我们还对金属酞菁(MPc)分子的负微分电阻效应(NDR效应)做了一些研究,基于我们开发的STM模拟方法,模拟了金属酞菁分子的STS谱,进一步研究了NDR效应的形成机制及应用。对负微分电阻效应的研究有一定的促进作用。第一章,我们首先从GPU的硬件特征入手介绍GPU的基本架构,以及GPU的硬件模型的发展。然后我们讲述了GPU用于通用计算从基本的图像处理到GPGPU通用计算再到CUDA的发展历程。最后我们详述了CUDA的设计原理,CUDA软件的架构,CUDA的线程模型,存储结构,编译方法等。第二章,我们首先介绍STM的基本工作原理,接着我们对STM模拟的几种基本方法做了概述。首先,我们讲述了修正的Bardeen方法(MBA方法),以及这种方法的一个特例,也就是应用比较广泛的Tesoff-Hammann方法,最后介绍了基于Bardeen方法发展的一个新的STM模拟方法,这种方法也是本文GPU模拟所采用的方法。第三章,我们首先通过两个测试体系验证了程序的正确性。接着我们介绍了程序的基本算法,并分析了程序中部分重要的代码。然后对程序各部分的加速进行测试,得到不同部分在GPU中的加速情况。最后,对整体加速,我们比较了两种算法。一种应用FFTW傅里叶变换库,另一种应用CUDA的傅里叶变换。我们通过不断加大程序的运算量来考察GPU的总体加速效果。第四章,我们基于现在的程序对负微分电阻效应进行一些研究。我们首先阐述了负微分电阻效应的几种机理,重点介绍了以前胡振芃等人的理论工作。然后,我们基于此基础模拟的几种酞菁分子做了理论计算,解释了模拟的结果,并分析各个NDR效应的产生机理以及将来可能的应用。接着我们计算了自旋极化的电子遂穿情况,更加细致的说明了NDR效应的产生机理。

论文目录

  • 摘要
  • Abstract
  • 第一章 绪论
  • 1.1 基于图形接口的通用GPU 运算
  • 1.2 STM 模拟
  • 1.3 NDR 效应
  • 第二章 GPU 通用计算基本理论
  • 2.1 引言
  • 2.2 GPU 体系结构
  • 2.2.1 传统GPU 架构
  • 2.2.2 统一渲染流水线架构
  • 2.3 并行编程模型的演进
  • 2.4 CUDA 编程模型
  • 2.4.1 CUDA 软件堆栈
  • 2.4.2 CUDA 线程层次结构
  • 2.4.3 CUDA 存储器结构
  • 2.4.4 NVCC 编译器
  • 第三章 STM 模拟基础
  • 3.1 扫描隧道显微镜的发明与发展
  • 3.2 STM 的工作原理
  • 3.3 一维遂穿模型
  • 3.4 微扰理论近似和Bardeen 公式
  • 3.5 Tersoff-Hamann (T-H)近似
  • 3.6 本文所用STM 模拟原理
  • 第四章 CUDA 实现 STM 模拟及优化结果
  • 4.1 程序正确性验证
  • 4.2 算法流程及部分代码解析
  • 4.2.1 算法流程
  • 4.2.2 代码解析
  • 4.3 加速测试
  • 4.3.1 分段加速测试
  • 4.3.2 整体加速测试
  • 第五章 金属酞菁分子 NDR 效应相关研究
  • 5.1 研究背景
  • 5.2 计算体系及计算细节
  • 5.3 计算结果及讨论
  • 5.3.1 非自旋极化遂穿情况
  • 5.3.2 自旋极化遂穿情况
  • 5.4 总结
  • 参考文献
  • 附录: STM 模拟程序
  • 致谢
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    GPU运算在STM模拟中的应用
    下载Doc文档

    猜你喜欢