首页> 外文期刊>Concurrency and Computation >JavaSymphony: a new programming paradigm to control and synchronize locality, parallelism and load balancing for parallel and distributed computing
【24h】

JavaSymphony: a new programming paradigm to control and synchronize locality, parallelism and load balancing for parallel and distributed computing

机译:JavaSymphony:一种新的编程范例,用于控制和同步并行,分布式计算的局部性,并行性和负载平衡

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

摘要

There has been an increasing research interest in extending the use of Java towards performance-oriented programming for distributed and concurrent applications. JavaSymphony is a Java-based programming paradigm that allows the programmer to control parallelism, load balancing, and locality at a high level of abstraction. Objects can be explicitly distributed and migrated based on a high-level API to static/dynamic system parameters and dynamic virtual distributed architectures, which impose a virtual hierarchy on a distributed system of physical computing nodes. In this paper we describe various extensions to the original JavaSymphony API, which includes a generalization of virtual architectures that can be used to specify and to request arbitrary heterogeneous distributed and concurrent architectures inside of a JavaSymphony program. The number of threads that execute an object's methods can be controlled dynamically through single- and multi-threaded objects. Conventional Java objects can be dynamically converted to JavaSymphony objects. A (un)lock mechanism has been introduced in order to avoid inconsistent modifications of objects or virtual architectures. A sophisticated event mechanism for asynchronous communication, coordination, and interaction is provided. Several synchronization constructs including distributed barrier synchronization and synchronization for asynchronous method invocations have been included. Several experiments are presented to demonstrate the effectiveness and efficiency of JavaSymphony.
机译:对于将Java的使用扩展到面向分布式和并发应用程序的面向性能的编程的研究兴趣越来越高。 JavaSymphony是基于Java的编程范例,它使程序员可以在高度抽象的级别上控制并行性,负载平衡和局部性。可以基于高级API将对象显式分发并迁移到静态/动态系统参数和动态虚拟分布式体系结构,从而在物理计算节点的分布式系统上建立虚拟层次结构。在本文中,我们描述了原始JavaSymphony API的各种扩展,其中包括虚拟体系结构的泛化,可用于指定和请求JavaSymphony程序内部的任意异构分布式和并发体系结构。可以通过单线程和多线程对象动态控制执行对象方法的线程数。常规的Java对象可以动态转换为JavaSymphony对象。为了避免对象或虚拟体系结构的不一致修​​改,引入了(解锁)机制。提供了用于异步通信,协调和交互的复杂事件机制。已经包括了几种同步结构,包括分布式屏障同步和用于异步方法调用的同步。提出了一些实验来证明JavaSymphony的有效性和效率。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号