×

存储缓冲区

swMATH ID: 28601
软件作者: 厄尼·科恩(Ernie Cohen);诺伯特·希默
描述: 存储缓冲区的一个约简定理。在验证并发程序时,通常假设内存是顺序一致的。然而,大多数现代多处理机依赖存储缓冲来提高效率,并且只提供本机顺序一致性,而性能损失很大。为了重新获得顺序一致性,程序员必须遵循适当的编程规程。然而,对于构建高性能的多处理器软件来说,诸如用锁保护所有共享访问等幼稚的规程不够灵活。我们提出了TSO(总存储顺序,带存储缓冲区转发)下并发编程的新规程。它不依赖于并发原语,例如锁。相反,线程使用虚操作来获取和释放内存地址的所有权。只有在没有其他线程拥有地址的情况下,线程才能写入该地址,并且只有在拥有地址或共享地址且线程上次写入不属于它的地址后已刷新其存储缓冲区的情况下才能读取该地址。此规程涵盖粗粒度并发(其中数据受锁保护)和细粒度并发(其中原子操作争用内存)。我们在Isabelle/HOL中形式化了这个规程,并证明了如果在没有存储缓冲区的系统中,程序的每次执行都遵循该规程,那么带存储缓冲区程序的每次运行都是顺序一致的。因此,我们可以通过对程序的普通比例推理来显示TSO下的顺序一致性,而不必考虑存储缓冲区。
主页: https://www.isa-afp.org/entries/Store_Buffer_Reducation.html
依赖项: 伊莎贝尔
关键词: 逻辑arXiv_cs。润滑油归约定理存储缓冲区验证伊莎贝尔/HOL并发程序
相关软件: 伊莎贝尔伊萨尔伊莎贝尔/HOL
引用于: 0个文档

标准条款

1出版物描述软件 年份
存储缓冲区的一个更好的约简定理arXiv公司
厄尼·科恩(Ernie Cohen);诺伯特·希默
2009