首页> 外文学位 >Cache based multigrid on unstructured grids in two and three dimensions.
【24h】

Cache based multigrid on unstructured grids in two and three dimensions.

机译:基于二维和非二维非结构化网格的基于缓存的多重网格。

获取原文
获取原文并翻译 | 示例

摘要

A computer's central processing unit (CPU) can perform a mathematical operation much faster than data can be transferred from main memory to the CPU. This disparity in speed continues to grow each year. Thus, scientific codes do not attain speeds which could be possible if the CPU speed were the only factor influencing code performance. The typical hardware solution is to place several layers of small, fast cache between the CPU and main memory. Cache hardware by itself cannot guarantee good scientific code performance. Better algorithms (or restructured forms of standard ones) are necessary to ensure better utilization of the cache hierarchy.;In geometric multigrid, the solve time is typically dominated by the smoothing and residual steps. Thus, a speedup in these steps should result in a similar speedup in the entire multigrid code. We consider Gauss-Seidel smoothing in the context of using geometric multigrid to solve a two or three dimensional second order elliptic partial differential equation on an unstructured grid.;We present a variant of the Gauss-Seidel method which keeps data in cache memory much longer than a non-cache aware implementation. As a result, this method is faster than non-cache implementations. The cache aware variant returns bitwise the same answer as a standard Gauss-Seidel method can the same grid ordering. Thus, all convergence results that hold for multigrid with standard Gauss-Seidel hold for multigrid with cache aware Gauss-Seidel.;The cache aware Gauss-Seidel method relies on information from the underlying problem discretization as well as load balancing ideas from parallel computing. The key step to the cache aware method is an inexpensive one time grid reordering. Upper bounds on the complexity of this reordering phase are derived for triangular, tetrahedral, quadrilateral, and hexahedral grids.;A multigrid implementation that uses the grid reordering techniques and cache aware Gauss-Seidel method is described. Code profiling statistics show that the cache aware multigrid method make better use of large cache memory than standard multigrid methods. Numerical experiments demonstrate that the cache aware multigrid code is faster than non-cache aware codes.
机译:与从主存储器向CPU传输数据相比,计算机的中央处理器(CPU)执行数学运算的速度要快得多。速度上的差距每年都在增长。因此,如果CPU速度是影响代码性能的唯一因素,则科学代码无法达到可能的速度。典型的硬件解决方案是在CPU和主内存之间放置几层小型快速缓存。缓存硬件本身不能保证良好的科学代码性能。为了确保更好地利用缓存层次结构,必须使用更好的算法(或标准形式的重组形式)。在几何多网格中,求解时间通常由平滑步骤和残差步骤决定。因此,这些步骤中的加速应该导致整个多网格代码中的类似加速。我们考虑在使用几何多重网格来求解非结构化网格上的二维或三维二阶椭圆偏微分方程的情况下进行高斯-赛德尔平滑处理;;我们提出了一种高斯-赛德尔方法的变体,该方法可使高速缓存中的数据保持更长的时间而不是不了解缓存的实现。因此,此方法比非缓存实现要快。可以识别缓存的变量按位返回与标准Gauss-Seidel方法可以相同的网格排序相同的答案。因此,适用于具有标准Gauss-Seidel的多网格的所有收敛结果均适用于具有缓存感知的Gauss-Seidel的多网格。;缓存感知的Gauss-Seidel方法依赖于基础问题离散化的信息以及并行计算的负载平衡思想。缓存感知方法的关键步骤是廉价的一次性网格重新排序。对于三角形,四面体,四边形和六面体网格,得出了此重新排序阶段的复杂度的上限。描述了一种使用网格重新排序技术和高速缓存感知的Gauss-Seidel方法的多网格实现。代码分析统计数据表明,与标准多网格方法相比,可识别缓存的多网格方法可以更好地利用大型缓存。数值实验表明,缓存感知的多网格代码比非缓存感知的代码更快。

著录项

  • 作者

    Hu, Jonathan Joseph.;

  • 作者单位

    University of Kentucky.;

  • 授予单位 University of Kentucky.;
  • 学科 Mathematics.
  • 学位 Ph.D.
  • 年度 2000
  • 页码 175 p.
  • 总页数 175
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号