实现对电阻抗断层成像程序的加速分析综述
目录
实现对电阻抗断层成像程序的加速分析综述 1
1.1并行计算模型 1
1.1.1PEIT 2
1.2GPU并行计算 2
1.2.1GPU架构体系 2
1.3CUDA架构 4
1.1.1CUDA编程模型 4
1.1.2CUDA执行模型 5
1.1.3CUDA内存模型 6
1.1并行计算模型
并行计算主要用于求解大型线性方程组,其目的是减轻计算机的压力,提高计算机的计算效率.在并行计算中,并行计算机的结构决定了计算模型存取内存的并行计算和顶级并行算法.并行计算机的主要分类主要不同于内存访问模型,微处理器和因特网,可分为机群(Cluster)、对称多处理共享存储并行计算机(SymmetricMultiprocessing,SMP)、星群(Constellation)、大规模并行计算机(MassivelyParallelProcessing,MPP)和分布式共享存储并行计算机(DistributedSharedMemory,DSM)五类错误;未找到弓用源。.与超级计算机相比,机群具有投资风险低、成本高、编程方便、可扩展性好的优点;机群广泛应用于多种编程语言中,特别是在分布式的环境中,一个聚类显示出很好的结果,Beowulf是最具代表性的聚类.他的前身是CESDIS(TheCenterofExcellenceinSpaceDataandInformationSciences)组织中Thomas和DonBecker两位用以太网和16个节点构成的计算机集群系统错误:未找到引用源。,其计算能力十分出色.在天气预报、石油勘探等重要科学和工程领域的实际需要中,处理通常需要并行计算模型,而传统的计算方法通常无能为力.
并行计算机没有统一的计算模型.但是,几个有价值的参考模型已经在业内被广泛认可,比如PRAM模型、BSP模型、LogP模型等.PRAM假设有对其容量大小没有限制的一个共享存储器,并且有多个功能相同的处理器,在任意时刻处理器可以访问共享存储单元错误!未找到引用源。.根据其是不是可以同时进行内存输出
和内存输入,它又分为以下三类:PRAM-EREW,PRAM-CREW,PRAM-CRCW(其中C代表Concurrent,意为允许并发操作,E-代表Exclusive,意味排斥并发操作).PRAM中的同步时钟控制着所有的操作,并使这些操作都能同步进行.BSP计算的构成有部件(处理器,它们胜任处理和/或局部内存事务),网络(在成对的部件之间的路由),屏障(允许所有或子集的部件进行同步化的硬件设施).LogP模型充分讨论网络的通信特性,并且放弃关于网络拓扑的讨论,LogP没有超级步骤的概念.,这是因为在LogP中消息是同步的,这意味着一旦消息到达处理器错误!未找到引用源。,就不必等待下一个超级步骤.
简单的来说,并行计算模型是利用多台服务器进行同步计算从而提升对程序的求解速率,而对于具体的服务器如何提升自身的计算,还可以借助于GPU,
一种高性能的处理器.
1.1.1PEIT
收到并行计算的启发,MarkusJehl等人的团队,在DUNE求解器,PETSC,
ZOLTAN负载均衡等的工具的基础上,由于目前一些较为特殊的电极模型(如人头),其物理结构复杂,使得其正问题中使用MATLAB进行对分解场域模型进行仿真的速率很慢,所以编写了一个可以在并行机器和集群上运行的求解器(PEIT),以减少EIT图像采集过程的计算时间.该求解器被广泛用于500万-1500万个单元网格的正演模拟.计算结果用于实验数据的图像重建错误!未找到引用源。.与MATLAB相比,除了雅可比矩阵的计算外,他们的求解器在每一步上都已经串行地更快了.特别是对于一个典型的步骤繁琐的EIT应用程序.
1.2GPU并行计算
计算机图形处理单元(GPU)是一种单芯片处理器,集成了“几何变换,照明,三角形构造,剪切和绘图引擎等”功能以及每秒至少10,000,000个多边形的
处理能力错识;未找到引用源。.GPU极大地提高了计算机的图形处理速度,提高了图形的质量,并促进了计算机图形学等领域的发展.与中央处理器(CPU)的串行设计模型有所不同,GPU是为图形处理而设计的,它实质上天生