Table of Contents
Fetching ...

Sky$^ε$-Tree: Embracing the Batch Updates of B$^ε$-trees through Access Port Parallelism on Skyrmion Racetrack Memory

Yu-Shiang Tsai, Shuo-Han Chen, Martijn Noorlander, Kuan-Hsun Chen

TL;DR

This work addresses the challenge of efficiently implementing $B^{\varepsilon}$-trees on Skyrmion Racetrack Memory (SK-RM), where batched updates and limited access ports lead to high energy and latency. The authors propose Sky$^{\varepsilon}$-tree, leveraging virtual buffer encoding to separate keys and values and port-parallel updates to perform batched writes across multiple SK-RM ports. They demonstrate two mapping variants, word-based and bit-interleaved, and show substantial improvements in latency and energy—up to about 80%—over naïve and baseline SK-RM deployments, with additional reductions in shift and injection operations. The results indicate a practical path to integrating $B^{\varepsilon}$-trees with SK-RM for memory and cache applications, preserving update/query performance while improving efficiency.

Abstract

Owing to the characteristics of high density and unlimited write cycles, skyrmion racetrack memory (SK-RM) has demonstrated great potential as either the next-generation main memory or the last-level cache of processors with non-volatility. Nevertheless, the distinct skyrmion manipulations, such as injecting and shifting, demand a fundamental change in widely-used memory structures to avoid excessive energy and performance overhead. For instance, while Bε-trees yield an excellent query and insert performance trade-off between B-trees and Log-Structured Merge (LSM)-trees, the applicability of deploying Bε-trees onto SK-RM receives much less attention. In addition, even though optimizing designs have been proposed for B+-trees on SK-RM, those designs are not directly applicable to Bε-trees owing to the batch update behaviors between tree nodes of Bε-trees. Such an observation motivates us to propose the concept of Skyε-tree to effectively utilize the access port parallelism of SK-RM to embrace the excellent query and insert performance of Bε-trees. Experimental results have shown promising improvements in access performance and energy conservation.

Sky$^ε$-Tree: Embracing the Batch Updates of B$^ε$-trees through Access Port Parallelism on Skyrmion Racetrack Memory

TL;DR

This work addresses the challenge of efficiently implementing -trees on Skyrmion Racetrack Memory (SK-RM), where batched updates and limited access ports lead to high energy and latency. The authors propose Sky-tree, leveraging virtual buffer encoding to separate keys and values and port-parallel updates to perform batched writes across multiple SK-RM ports. They demonstrate two mapping variants, word-based and bit-interleaved, and show substantial improvements in latency and energy—up to about 80%—over naïve and baseline SK-RM deployments, with additional reductions in shift and injection operations. The results indicate a practical path to integrating -trees with SK-RM for memory and cache applications, preserving update/query performance while improving efficiency.

Abstract

Owing to the characteristics of high density and unlimited write cycles, skyrmion racetrack memory (SK-RM) has demonstrated great potential as either the next-generation main memory or the last-level cache of processors with non-volatility. Nevertheless, the distinct skyrmion manipulations, such as injecting and shifting, demand a fundamental change in widely-used memory structures to avoid excessive energy and performance overhead. For instance, while Bε-trees yield an excellent query and insert performance trade-off between B-trees and Log-Structured Merge (LSM)-trees, the applicability of deploying Bε-trees onto SK-RM receives much less attention. In addition, even though optimizing designs have been proposed for B+-trees on SK-RM, those designs are not directly applicable to Bε-trees owing to the batch update behaviors between tree nodes of Bε-trees. Such an observation motivates us to propose the concept of Skyε-tree to effectively utilize the access port parallelism of SK-RM to embrace the excellent query and insert performance of Bε-trees. Experimental results have shown promising improvements in access performance and energy conservation.
Paper Structure (15 sections, 17 figures, 2 tables, 1 algorithm)

This paper contains 15 sections, 17 figures, 2 tables, 1 algorithm.

Figures (17)

  • Figure 1: Word-based and bit-interleaved mapping.
  • Figure 2: Bit-comparison and permutation-write strategies.
  • Figure 3: Comparison of key-value pairs' write counts with different numbers of key-value pairs insertions.
  • Figure 4: Word-based data layout of the Sky$^{\varepsilon}$-tree, in which an internal node occupies a racetrack for its pivots and buffer, and a leaf node stores its elements on the same track. K, P, B, and E denote the keys, pivots, buffer, and elements.
  • Figure 5: Working principle of the virtual buffer encoding, in which values of upserted key-value pairs are separated and replaced by indices with less number of bits for reducing skyrmion injections during flush/split operations.
  • ...and 12 more figures