首页> 外文会议>Stabilization, safety, and security of distributed systems >Snake: Control Flow Distributed Software Transact ional Memory
【24h】

Snake: Control Flow Distributed Software Transact ional Memory

机译:Snake:控制流分布式软件事务性内存

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

摘要

Remote Method Invocation (RMI), Java's remote procedure call implementation, provides a mechanism for designing distributed Java technology-based applications. It allows methods to be invoked from other Java virtual machines, possibly at different hosts. RMI uses lock-based concurrency control, which suffers from distributed deadlocks, livelocks, and scalability and composability challenges. We present Snake-DSTM, a distributed software transactional memory (D-STM) that is based on the RMI as a mechanism for handling remote calls and transactional memory for distributed concurrency control, as an alternative to RMI/locks. Critical sections are defined as atomic transactions, in which reads and writes to shared, local and remote objects appear to take effect instantaneously. The novelty of Snake-DSTM is in manipulating transactional memory by moving control to remote nodes, rather than remote nodes' data being copied to the node at which the transaction runs. Transaction metadata is detached from the transactional context, and the dynamic two phase commitment protocol (D2PC) is employed to coordinate the voting process among participating nodes toward making distributed transactional commit decisions. We propose a simple programming model using (Java 5) annotations to define critical sections and remote methods. Instrumentation is used to generate code at class-load time, which significantly simplifies user-space end code. No changes are needed to the underlying virtual machine or compiler. We describe Snake-DSTM's architecture and implementation, and report on experimental studies comparing it against competing models including RMI with mutual exclusion and read/write locks, distributed shared memory (DSM), and dataflow-based D-STM. Our studies show that Snake-DSTM outperforms competitors by up to 12× on different workloads using a 120-node system.
机译:远程方法调用(RMI)是Java的远程过程调用实现,它提供了一种用于设计基于Java技术的分布式应用程序的机制。它允许从其他Java虚拟机(可能在不同主机上)调用方法。 RMI使用基于锁的并发控制,该控件遭受分布式死锁,活动锁以及可伸缩性和可组合性的挑战。我们介绍Snake-DSTM,这是一种分布式软件事务存储器(D-STM),它是作为RMI /锁的替代品的RMI(用于处理远程调用的机制)和用于分布式并发控制的事务存储器。关键部分定义为原子事务,其中对共享的本地和远程对象的读取和写入似乎立即生效。 Snake-DSTM的新颖之处在于通过将控制权移至远程节点来操纵事务内存,而不是将远程节点的数据复制到运行事务的节点上。事务元数据与事务上下文分离,并且采用动态两阶段承诺协议(D2PC)协调参与节点之间的投票过程,以制定分布式事务提交决策。我们提出了一个使用(Java 5)批注的简单编程模型,以定义关键部分和远程方法。仪器用于在类加载时生成代码,从而大大简化了用户空间的最终代码。无需对基础虚拟机或编译器进行任何更改。我们描述了Snake-DSTM的体系结构和实现,并通过实验研究报告了它与竞争模型的比较,这些模型包括具有互斥和读写锁,分布式共享内存(DSM)和基于数据流的D-STM的RMI。我们的研究表明,在使用120节点系统的不同工作负载下,Snake-DSTM的性能要比竞争对手高12倍。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号