Proceedings of the 2009 International Symposium on Memory Management 2009
DOI: 10.1145/1542431.1542447
|View full text |Cite
|
Sign up to set email alerts
|

Two memory allocators that use hints to improve locality

Abstract: Dynamic memory allocators affect an application's performance through their data layout quality. They can use an application's allocation hints to improve the spatial locality of this layout. However, a practical approach needs to be automatic, without user intervention. In this paper we present two locality improving allocators, that use allocation hints provided automatically from the C++ STL library to improve an application's spatial locality. When compared to state-of-the-art allocators on seven real worl… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
9
0

Year Published

2009
2009
2015
2015

Publication Types

Select...
5
3

Relationship

0
8

Authors

Journals

citations
Cited by 18 publications
(9 citation statements)
references
References 28 publications
(16 reference statements)
0
9
0
Order By: Relevance
“…These techniques use a variety of types of static and dynamic information that can be obtained without special hardware, such as field access profiles at read barriers [7,8,9], object lifetimes [10], allocation frequencies for each Java class [11], hints provided by the STL container libraries [12], or static access patterns analyzed at the compilation time [13]. Our heuristic approach is unique in the sense that we try to detect objects and fields that cause many cache misses, not just those that are frequently accessed.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…These techniques use a variety of types of static and dynamic information that can be obtained without special hardware, such as field access profiles at read barriers [7,8,9], object lifetimes [10], allocation frequencies for each Java class [11], hints provided by the STL container libraries [12], or static access patterns analyzed at the compilation time [13]. Our heuristic approach is unique in the sense that we try to detect objects and fields that cause many cache misses, not just those that are frequently accessed.…”
Section: Related Workmentioning
confidence: 99%
“…We use these special patterns to handle collection classes. Because it is known that the objects managed by a collection class, such as hashmaps, frequently cause cache misses and so these patterns are important when identifying likely cache misses [12]. The first pattern in Figure 6 includes a type cast.…”
Section: Additional Patterns For Alignment Optimizationmentioning
confidence: 99%
“…Flushing the cache will actually write back the data, and invalidating it, while still avoiding the write-back, could have a negative impact on performance, because the benefits of temporal locality are lost. This is particularly true the for heap region where memory allocators are actually designed to improve cache locality by reusing recently freed blocks [22], [23], [24], [25], [26].…”
Section: Discussionmentioning
confidence: 99%
“…We have also developed several custom memory allocators: Defero [19] and TP [20]. The ultimate objective was to interface to K42'named paging system.…”
Section: Application-specific Customization Of the Rtsmentioning
confidence: 99%