University of Illinois at Urbana-Champaign
Xmalloc: a scalable lock-free dynamic memory allocator for many-core machines
Abstract
dc:descriptionThere are two venues for many-core machines to gain higher performance: increasing the number of processors and number of vector units in one SIMD processor. A truly scalable algorithm should take advantage for both venues. However, most of past research, on scalable memory allocators such as atomic operation based lock-free algorithms, can be scalable with number of processors growing, but have poor scalability with the number of vector units in one SIMD processor growing. As a result, they are not truly scalable in many-core architecture. In this work, we introduce our proposed solution used in the design of XMalloc, an truly scalable, efficient lockfree memory allocator. We will present (1) Our solution for transforming traditional atomic CAS(Compare-And-Swap) based lock-free algorithm to be truly scalable for many-core architecture. (2) A hierarchical cache-like buffer solution to reduce the average latency for accessing non-scalable or slow resource such as the memory system in many-core machine. We used XMalloc as a memory allocator for NVIDIA Tesla C1600 with 240 processing units. Our experimental results show that XMalloc achieves very good scalability in terms of the number of processors and the number of vector units in each SIMD processor growing. Our truly scalability lock-free solution achieve 211 times speedup comparing to the common lock-free solution.
Degree
thesis:*- Name thesis:degree_name
- M.S.
- Level thesis:degree_level
- Thesis
- Discipline thesis:degree_discipline
- Computer Science
- Grantor
- University of Illinois at Urbana-Champaign
- Year dc:date
- 2010
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Huang, Xiaohuang
- Contributors dc:contributor
-
- Hwu, Wen-Mei W.
Subjects
dc:subject × 2Rights
dc:rights- Statement dc:rights
-
- Copyright 2010 Xiaohuang Huang
- Language dc:language
- en
Identifiers
dc:identifier.*- Handle dc:identifier
- http://hdl.handle.net/2142/16137
- OAI identifier oai:identifier
- oai:www.ideals.illinois.edu:2142/16137