Consistency violation faults \cvf{s} refer to faults that occur due to inconsistent reads in a shared memory program. In the execution of shared-memory, interleaving, self-stabilizing programs, \cvf{s} offer a trade-off. Specifically, preventing \cvf{s} requires processes to coordinate with each other thereby slowing the execution of each action. On the other hand, permitting \cvf{s} requires less coordination and faster execution of each action. However, when a \cvf occurs, it can disrupt the convergence of self-stabilizing programs. Thus, a computation of a program in the presence of \cvf{s} can be thought of as a contest where program actions attempt to take the program to a legitimate state whereas \cvf{s} could potentially this convergence. We analyze three self-stabilizing programs (token ring, coloring and maximal matching) to evaluate this contest between program transitions and \cvf{s}. We find that the relative cost of \cvf{s} is generally small, i.e., as long as a few program transitions can execute between \cvf{s}, the program (probabilistically) converges. We also find that the cost-distribution of \cvf{s} is exponential in nature in that the fraction of \cvf{s} with cost $c$ exponentially decreases with $c$. We validate these results via simulation where we control the rate of \cvf{s}.
翻译:默认违反错误 \ cvf{s} 指的是由于共享记忆程序中的读取不一致而出现的错误 { cvf{s} 。 在执行共享存储程序时, 执行共享存储、 互换、 自稳定程序时,\ cvf{s} 提供了一种权衡。 具体地说, 防止\ cvf{s} 需要程序彼此协调, 从而减缓每次动作的执行。 另一方面, 允许\ cvf{s} 需要较少协调和更快地执行每个动作。 然而, 当出现\ cvf 时, 它会破坏自稳定程序的趋同。 因此, 在存在共享存储程序时, 计算程序程序试图将程序推向一个合法状态, 而\ cvffs} 则可能出现这种趋同。 我们分析三种自稳定程序( 制环、 颜色和最大匹配) 来评估程序转换和我们cvfs} 之间的这种竞争。 我们发现, 直径的相对成本, 和直径直径( ) 直径), 直径(, 直径) 等程序的执行成本, 。