首页> 外文期刊>Computer Languages, Systems & Structures >DESIGN AND IMPLEMENTATION OF 8_(1/2): A DECLARATIVE DATA-PARALLEL LANGUAGE
【24h】

DESIGN AND IMPLEMENTATION OF 8_(1/2): A DECLARATIVE DATA-PARALLEL LANGUAGE

机译:8_(1/2)的设计与实现:声明性的数据并行语言

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

摘要

In this article we advocate a declarative approach to data-parallelism to provide both parallelism expressiveness and efficient execution of data intensive applications. 8_(1/2), an experimental language combining features of collection and stream oriented languages in a declarative framework, is presented. A new structure, the web, allows the programmer to write programmes as mathematical expressions and to implicitly express data and control parallelism. The first part of this paper proposes a classification of the various expressions of parallelism in programming languages. We show that hybrid execution models combining both data and control parallelism are possible and necessary to get an effective speedup. We sketch the advantage of the declarative style with respect to parallelism expression (application side) and exploitation (compiler side). In the second part we describe the 8_(1/2) language and the concepts of collection, stream and web. A web is a multi-dimensional object that represents the successive values of a structured set of variables. Some 8_(1/2) programmes are given to show the relevance of the web data structure for simulation applications (a resolution of O.D.P.E. and a simulation in artificial life). Examples of 8_(1/2) programmes, involving the dynamic creation and destruction of webs, are also given. Such programmes are necessary for simulations of growing systems. In the third part, the implementation of a compiler restricted to the static part of the language is described. We focus on the process of web equations compilation towards a virtual SIMD machine. We also present the clock calculus, the scheduling inference and the distribution of the computations among the processing elements of a parallel computer.
机译:在本文中,我们提倡一种声明性的方法来处理数据并行性,以提供并行性表现力和数据密集型应用程序的有效执行。提出了8_(1/2),一种在声明性框架中结合了集合语言和面向流语言的特征的实验语言。网络是一种新的结构,它使程序员可以将程序编写为数学表达式,并隐式表示数据并控制并行性。本文的第一部分提出了编程语言中各种并行性表达的分类。我们证明了结合数据和控制并行性的混合执行模型是可能的,而且对于获得有效的加速是必要的。我们就并行性表达式(应用程序端)和开发(编译器端)而言,描述了声明式风格的优点。在第二部分中,我们描述8_(1/2)语言以及集合,流和Web的概念。网络是一个多维对象,代表一组结构化变量的连续值。给出了一些8_(1/2)程序来显示Web数据结构与模拟应用程序的相关性(O.D.P.E.的分辨率和人造生活中的模拟)。还给出了8_(1/2)程序的示例,其中涉及动态创建和销毁Web。这样的程序对于模拟不断发展的系统是必需的。在第三部分中,描述了限于语言的静态部分的编译器的实现。我们专注于将网络方程式编译为虚拟SIMD机器的过程。我们还介绍了时钟演算,调度推理以及并行计算机处理元素之间的计算分布。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号