首页> 外文学位 >The design and implementation of a region-based parallel programming language.
【24h】

The design and implementation of a region-based parallel programming language.

机译:基于区域的并行编程语言的设计和实现。

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

摘要

Programming parallel computers is an extremely challenging task for expert computer programmers, let alone for scientists in other disciplines whose computations often drive the acquisition of such machines. This dissertation describes the design and implementation of ZPL, a programming language created to simplify the task of programming parallel computers. ZPL allows programmers to write code using a global view that describes their algorithms at a high level rather than implementing per-processor behavior. However, unlike other global-view languages, ZPL permits users to reason about the parallel implementation of their code at the syntactic level, allowing them to make informed algorithmic decisions based on the program's parallel implementation. The language feature that supports this duality is called the region. A region is simply a language-level index set that programmers can define, name, and manipulate using high-level operators. Regions constitute a unique means of specifying array computation, serving as an alternative to traditional array indexing and slicing. By distributing each region's indices across a processor set, a parallel interpretation of a ZPL program is achieved.; This dissertation studies the impact of the region concept throughout the design and implementation of ZPL. It begins by defining the region concept and its use in the language. It then gives a parallel interpretation of regions, which results in ZPL's syntax-based performance model. ZPL's implementation and runtime libraries are described in detail to show how regions are represented and used at runtime. The design and implementation of a paradigm-neutral interface for efficient portable communication is also described. Finally, two extensions to the basic region concept are given: parameterized regions which can be used to implement hierarchical algorithms such as the multigrid method, and sparse regions which can be used to specify sparse computation over sparse or dense arrays. Throughout the dissertation, regions are evaluated by comparing ZPL programs to other languages in terms of clarity and performance. The conclusion is that regions are a crisp and powerful mechanism for array-based parallel programming.
机译:对并行计算机进行编程对专家计算机程序员而言是一项极富挑战性的任务,更不用说对其他学科的科学家而言,这些学科的计算通常会推动对此类计算机的获取。本文介绍了ZPL的设计和实现,ZPL是一种为简化并行计算机编程任务而创建的编程语言。 ZPL允许程序员使用全局视图编写代码,该全局视图从高层次描述其算法,而不是实现每个处理器的行为。但是,与其他全局视图语言不同,ZPL允许用户在语法级别上推理其代码的并行实现,从而允许他们基于程序的并行实现做出明智的算法决策。支持这种双重性的语言功能称为区域。区域只是语言级别的索引集,程序员可以使用高级运算符定义,命名和操作。区域构成了指定数组计算的独特方法,可作为传统数组索引和切片的替代方法。通过在处理器集中分布每个区域的索引,可以实现对ZPL程序的并行解释。本文研究了区域概念在ZPL设计和实施过程中的影响。首先定义区域概念及其在语言中的使用。然后,它对区域进行并行解释,从而得出ZPL基于语法的性能模型。详细描述了ZPL的实现和运行时库,以显示在运行时如何表示和使用区域。还描述了用于高效便携式通信的范例中立接口的设计和实现。最后,给出了对基本区域概念的两个扩展:可用于实现诸如多层网格方法之类的分层算法的参数化区域,以及可用于指定稀疏或密集数组上的稀疏计算的稀疏区域。在整个论文中,通过将ZPL程序与其他语言的清晰度和性能进行比较来评估区域。结论是,区域是基于数组的并行编程的明快而强大的机制。

著录项

  • 作者

    Chamberlain, Bradford Lee.;

  • 作者单位

    University of Washington.;

  • 授予单位 University of Washington.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2001
  • 页码 394 p.
  • 总页数 394
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类 自动化技术、计算机技术;
  • 关键词

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号