Applications making excessive use of single-object based data structures (such as linked lists, trees, etc...) can see a drop in efficiency over a period of time due to the randomization of nodes in memory. This slow down is due to the ineffective use of the CPU's L1/L2 cache. We present a novel approach for mitigating this by presenting the design of a single-object memory allocator that preserves memory locality across randomly ordered memory allocations and deallocations.
翻译:过度使用基于单一物体的数据结构(例如链接列表、树等)的应用在一段时间内效率会下降,因为内存节点随机化。 减速的原因是CPU L1/L2 缓存的使用无效。 我们提出了一个新办法来减轻这一影响, 方法是提出一个单个物体内存分配器的设计, 保存随机订购的内存分配和交易地点之间的内存位置 。