学位论文详细信息
A Safety-First Approach to Memory Models.
Memory Consistency Model;Memory Model;DRFx memory model;Computer Science;Engineering;Computer Science and Engineering
Singh, Abhayendra NarayanMusuvathi, Madanlal ;
University of Michigan
关键词: Memory Consistency Model;    Memory Model;    DRFx memory model;    Computer Science;    Engineering;    Computer Science and Engineering;   
Others  :  https://deepblue.lib.umich.edu/bitstream/handle/2027.42/120794/ansingh_1.pdf?sequence=1&isAllowed=y
瑞士|英语
来源: The Illinois Digital Environment for Access to Learning and Scholarship
PDF
【 摘 要 】

Sequential consistency (SC) is arguably the most intuitive behavior for a shared-memory multithreaded program. It is widely accepted that language-level SC could significantly improve programmability of a multiprocessor system. However, efficiently supporting end-to-end SC remains a challenge as it requires that both compiler and hardware optimizations preserve SC semantics.Current concurrent languages support a relaxed memory model that requires programmers to explicitly annotate all memory accesses that can participate in a data-race (;;unsafe;; accesses). This requirement allows compiler and hardware to aggressively optimize unannotated accesses, which are assumed to be data-race-free (;;safe;; accesses), while still preserving SC semantics. However, unannotated data races are easy for programmers to accidentally introduce and are difficult to detect, and in such cases the safety and correctness of programs are significantly compromised.This dissertation argues instead for a safety-first approach, whereby every memory operation is treated as potentially unsafe by the compiler and hardware unless it is proven otherwise.The first solution, DRFx memory model, allows many common compiler and hardware optimizations (potentially SC-violating) on unsafe accesses anduses a runtime support to detect potential SC violations arising from reordering ofunsafe accesses. On detecting a potential SC violation, execution is halted before the safety property is compromised.The second solution takes a different approach and preserves SC in both compiler and hardware. Both SC-preserving compiler and hardware are also built on the safety-first approach. All memory accesses are treated as potentially unsafe by the compiler and hardware.SC-preserving hardware relies on different static and dynamic techniques to identify safe accesses. Our results indicate that supporting SC at the language level is notexpensive in terms of performance and hardware complexity.The dissertation also explores an extension of this safety-first approach for data-parallel accelerators such as Graphics Processing Units (GPUs). Significant microarchitectural differences between CPU and GPU require rethinking of efficient solutions for preserving SC in GPUs. The proposed solution based on our SC-preserving approach performs nearly on par with the baseline GPU that implements a data-race-free-0 memory model.

【 预 览 】
附件列表
Files Size Format View
A Safety-First Approach to Memory Models. 3909KB PDF download
  文献评价指标  
  下载次数:7次 浏览次数:8次