2019 · 21 citations · 26 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureData StructuresParallel AlgorithmsHardware AccelerationMemory Hierarchy OptimizationParallel Data StructuresSkip ListsConcurrent Linked ListsConcurrent Skip ListsData AccessEmpirical EvaluationMemory Layout OptimizationQueues
Recent advances in memory architectures have provoked renewed interest in near-data-processing (NDP) as way to alleviate the "memory wall" problem. An NDP architecture places logic circuits, such as simple processors, in close proximity to memory. Effective use of NDP architectures requires rethinking data structures and their algorithms. Here, we provide an empirical evaluation of several NDP-aware algorithms for general-purpose concurrent data structures such as linked-lists, skiplists, and FIFO queues. The empirical analysis reveals that the potential benefits of NDP-based concurrent data structures are less than what had been expected in earlier studies. In turn, we introduce lightweight NDP hardware modifications, inspired by initial observations on data access patterns and underlying DRAM activity. Even the minimal changes to hardware significantly improve the performance and energy consumption of NDP-based concurrent data structures, and in many cases, the resulting data structures outperform state-of-the-art concurrent data structures.
26
Nathan Binkert, Bradford M. Beckmann, Gabriel Black et al. · ACM SIGARCH Computer Architecture News · 2011 · 4.9K citations
Sheng Li, Jung Ho Ahn, Richard Strong et al. · 2009 · 2.4K citations
Wm. A. Wulf, Sally A. McKee · ACM SIGARCH Computer Architecture News · 1995 · 1.5K citations
Hitting the Memory Wall: Implications of the Obvious
Wm. A. Wulf, Sally A. McKee · 1995 · 1.4K citations
Skip lists: a probabilistic alternative to balanced trees
William Pugh · Communications of the ACM · 1990 · 1.2K citations · Full text