首页> 外文学位 >Efficient object sharing in shared-memory multiprocessors.
【24h】

Efficient object sharing in shared-memory multiprocessors.

机译:共享内存多处理器中的有效对象共享。

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

摘要

The goal of this work is to facilitate efficient use of concurrent shared objects in asynchronous, shared-memory multiprocessors. Shared objects are usually implemented using locks in such systems. However, lock-based implementations result in substantial inefficiency in multiprogrammed systems, where processes are frequently subject to delays due to preemption. This inefficiency arises because processes can be delayed while holding a lock, thereby delaying other processes that require the lock.;In contrast, lock-free and wait-free implementations guarantee that the delay of one process will not delay another process. We show that lock-free and wait-free implementations for shared objects provide a viable alternative to lock-based ones, and that they can provide a significant performance advantage over lock-based implementations in multiprogrammed systems.;Lock-free and wait-free implementations are notoriously difficult to design and to verify as correct. Universal constructions alleviate this problem by generating lock-free and wait-free shared object implementations using sequential implementations. However, previous universal constructions either require significant creative effort on the part of the programmer for each object, or result in objects that have high space and time overhead due to excessive copying.;We present lock-free and wait-free universal constructions that achieve low space and time overhead for a wide spectrum of important objects, while not placing any extra burden on the object programmer. We also show that the space and time overhead of these constructions can be further reduced by using k-exclusion algorithms to restrict access to the shared object. This approach requires a long-lived renaming algorithm that enables processes to acquire and release names repeatedly. We present several efficient k-exclusion and long-lived renaming algorithms.;Our universal constructions are based on the load-linked and store-conditional synchronization instructions. We give a constant-time, wait-free implementation of load-linked and store-conditional using compare-and-swap, and an implementation of multi-word load-linked and store-conditional instructions using similar one-word instructions. These results allow our algorithms and others to be applied more widely; they can also simplify the design of new algorithms.
机译:这项工作的目的是促进异步共享内存多处理器中并发共享对象的有效使用。共享对象通常在此类系统中使用锁来实现。但是,基于锁的实现方式在多程序系统中导致严重的低效率,在该系统中,进程由于抢占而经常受到延迟的影响。这种低效率的产生是因为在持有锁的同时可以延迟进程,从而延迟了需要该锁的其他进程。相反,无锁和无等待的实现保证了一个进程的延迟不会延迟另一个进程。我们证明了共享对象的无锁和免等待实现提供了一种基于锁的实现的可行替代方案,并且与多程序系统中基于锁的实现相比,它们可以提供显着的性能优势。众所周知,实现很难设计和验证正确。通用构造通过使用顺序实现生成无锁和免等待的共享对象实现来缓解此问题。但是,以前的通用构造要么需要程序员为每个对象付出大量的创造力,要么由于过度复制而导致对象占用大量空间和时间。我们提供了无锁和免等待的通用构造,它们可以实现各种重要对象的空间和时间开销低,同时又不给对象程序员带来任何额外负担。我们还表明,通过使用k排除算法来限制对共享对象的访问,可以进一步减少这些构造的空间和时间开销。这种方法需要使用长期有效的重命名算法,该算法可使进程重复获取和释放名称。我们提出了几种有效的k排除和长期重命名算法。;我们的通用构造基于负载链接和存储条件同步指令。我们提供了使用比较和交换的恒定时间,无等待时间的加载链接和存储条件的实现,以及使用相似的单字指令实现多字加载链接和存储条件的指令的实现。这些结果使我们的算法和其他算法得到更广泛的应用。他们还可以简化新算法的设计。

著录项

  • 作者

    Moir, Mark.;

  • 作者单位

    The University of North Carolina at Chapel Hill.;

  • 授予单位 The University of North Carolina at Chapel Hill.;
  • 学科 Computer science.
  • 学位 Ph.D.
  • 年度 1996
  • 页码 266 p.
  • 总页数 266
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号