Efficient Hybrid Switching Between Double Dirty Bit and Spineless Traversal

Develop a competitive hybrid incremental layout invalidation traversal that combines Double Dirty Bit summary-bit-based subtree dirty-bit propagation with Spineless Traversal’s priority-queue-based jumps for distant nodes by devising an efficient switching mechanism between the two modes that is fast enough to be competitive in practice.

Background

The paper introduces Spineless Traversal, a priority-queue-based incremental layout algorithm that avoids accessing auxiliary nodes, yielding substantial speedups over the widely used Double Dirty Bit approach. Double Dirty Bit uses summary bits to prune subtrees without dirty nodes but still traverses auxiliary nodes along spines, causing cache misses and latency.

To potentially combine the strengths of both approaches, the authors experimented with a hybrid that would use Double Dirty Bit’s summary bits for subtree-level dirty-bit propagation and switch to Spineless Traversal’s priority queue for longer jumps to distant dirty nodes. However, their implementation suffered from switching overhead and did not achieve competitive performance, leaving open whether an efficient switching strategy can make such a hybrid practical.

References

A hybrid of Double Dirty Bit and Spineless Traversal, using a summary bit for subtree dirty bit propagation but the priority queue for more distant jumps. We were unable to make switching between the two modes efficient enough to be competitive.

Spineless Traversal for Layout Invalidation  (2411.10659 - Kirisame et al., 2024) in Section 4, Optimization: Attempted, Failed Optimizations