| BibTeX | @misc{cma24,
author = {Nazarewicz, Michał and Szyprowski, Marek},
title = {{Continuous Memory Allocator}, version 24},
year = 2012,
month = apr,
day = 03,
url = {https://marc.info/?l=linux-mm&m=133346232109122},
messageid = {1333462221-3987-1-git-send-email-m.szyprowski@samsung.com}
}
@inproceedings{nazarewicz2012lce,
title = {{Contiguous Memory Allocator}: {Allocating} Big Chunks of Physically Contiguous Memory},
author = {Nazarewicz, Michał},
booktitle = {LinuxCon Europe},
year = 2012,
month = nov,
day = 06,
address = {Barcelona, Spain},
url = {https://mina86.com/2012/cma-on-lce-elce-2012/}
}
@article{nazarewicz212lwn,
author = {Nazarewicz, Michał},
title = {A Deep Dive into {CMA}},
journal = {Linux Weekly News},
year = 2012,
month = mar,
day = 13,
url = {https://lwn.net/Articles/486301/}
}
@misc{nazarewicz2012deep,
title = {Deep Dive into {Contiguous Memory Allocator}},
author = {Nazarewicz, Michał},
year = 2012,
month = jun,
day = 10,
url = {https://mina86.com/2012/deep-dive-into-contiguous-memory-allocator-part-i/},
}
@mastersthesis{nazarewicz2013bsc,
title = {Alokacja ciągłych fizycznie obszarów pamięci w systemie {Linux}},
author = {Nazarewicz, Michał},
year = 2013,
school = {WEiTI/ISE, PW},
address = {Warsaw},
type = {Bachelor’s thesis},
urn = {urn:pw-repo:WUT2a4eca3283974485823865112329121d},
url = {https:/mina86.com/2013/cma-po-polsku/}
}
@article{corbet447405,
author = {Corbet, Jonathan},
title = {A Reworked {Contiguous Memory Allocator}},
year = 2011,
month = jun,
day = 12,
journal = {Linux Weekly News},
publisher = {Eklektix},
url = {https://lwn.net/Articles/447405/}
}
@article{corbet450286,
author = {Corbet, Jonathan},
title = {{CMA} and {ARM}},
year = 2011,
month = jun,
day = 05,
journal = {Linux Weekly News},
publisher = {Eklektix},
url = {https://lwn.net/Articles/450286/}
}
@article{corbet368869,
author = {Corbet, Jonathan},
title = {Memory Compaction},
year = 2010,
month = jan,
day = 06,
journal = {Linux Weekly News},
publisher = {Eklektix},
url = {https://lwn.net/Articles/368869/}
}
@article{corbet340080,
author = {Corbet, Jonathan},
title = {Transcendent memory},
year = 2009,
month = jul,
day = 08,
journal = {Linux Weekly News},
publisher = {Eklektix},
url = {https://lwn.net/Articles/340080/}
}
@article{corbet468896,
author = {Corbet, Jonathan},
title = {{POSIX\_FADV_VOLATILE}},
year = 2011,
month = nov,
day = 22,
journal = {Linux Weekly News},
publisher = {Eklektix},
url = {https://lwn.net/Articles/468896/}
}
@misc{song,
author = {Song, Barry},
title = {A Simple Kernel Module as a Helper to Test {CMA}, v. 4},
year = 2012,
month = mar,
day = 07,
url = {https://marc.info/?l=linux-kernel&m=133112038122899},
messageid = {1331120259-30780-1-git-send-email-Barry.Song@csr.com}
}
@misc{kim,
author = {Kim, Minchan},
title = {Discard clean pages during contiguous allocation instead of migration},
year = 2012,
month = sep,
day = 11,
url = {https://marc.info/?l=linux-kernel&m=134732408014915},
messageid = {1347324112-14134-1-git-send-email-minchan@kernel.org}
}
@misc{abbott,
author = {Abbott, Laura},
title = {Revoke {LRU} when trying to drop buffers},
year = 2012,
month = sep,
day = 11,
url = {https://marc.info/?l=linux-kernel&m=134738454404157},
messageid = {1347384529-5862-1-git-send-email-lauraa@codeaurora.org}
}Below is a list of materials about Contiguous Memory Allocator (CMA) and topics relating to it which may be of interest. - Michał Nazarewicz and Marek Szyprowski. 2012. Continuous Memory Allocator, version 24.
- The final patchset that was merged in Linux 3.5.
- Michał Nazarewicz. 2013. Alokacja ciągłych fizycznie obszarów pamięci w systemie Linux. Bachelor’s thesis. WEiTI/ISE, PW, Warsaw.
- 🇵🇱 Diploma thesis in Polish on the Continuous Memory Allocator.
- Michał Nazarewicz. 2012. A Deep Dive into CMA. Linux Weekly News (March 2012).
- A description of the way to integrate CMA with an architecture as well as short summary of how exactly CMA works.
- Michał Nazarewicz. 2012. Deep Dive into Contiguous Memory Allocator.
- A description of how to use and integrate CMA with an architecture. It is a first part of an extended version of the above LWN article and as such it includes much more details.
- Michał Nazarewicz. 2012. Contiguous Memory Allocator: Allocating Big Chunks of Physically Contiguous Memory. LinuxCon Europe, Barcelona, Spain.
- The presentation from the LinuxCon Europe (LCE) 2012 about CMA.
- Barry Song. 2012. A Simple Kernel Module as a Helper to Test CMA, vrsien 4.
- A short and simple driver that can be used to test CMA as well as see how it is used.
- Jonathan Corbet. 2011. A Reworked Contiguous Memory Allocator. Linux Weekly News (June 2011).
- An overwiev of the Contiguous Memory Allocator.
- Jonathan Corbet. 2011. CMA and ARM. Linux Weekly News (June 2011).
- An overview of the linear mapping problems CMA had on ARM platforms, and why the early fixups are required.
- Laura Abbott. 2012. Revoke LRU when trying to drop buffers.
- Patch which tries to improve CMA’s performance by removing buffer from LRU prior to migration. The thread also mentiones problem with ext4 not supporting migration of journal pages.
- Jonathan Corbet. 2010. Memory Compaction. Linux Weekly News (January 2010).
- An overview of Mel Gorman’s compaction patches. Compaction code is used by CMA for scanning for and migrating non-free pages.
- Jonathan Corbet. 2009. Transcendent memory. Linux Weekly News (July 2009).
- Overwiev of an idea behind and implementation of the transcendent memory. Such memory can be marked ‘ephemeral’ which means that kernel can discard it if it wishes to.
- Jonathan Corbet. 2011.
POSIX_FADV_VOLATILE. Linux Weekly News (November 2011). - An overwiev of John Stultz’s
POSIX_FADV_VOLATILE implementation which is one of the things that CMA work with nicely. - Minchan Kim. 2012. Discard clean pages during contiguous allocation instead of migration.
- Patch changing CMA so that clean pages are discarded instead of migrating which improves CMA’s performance.
|
|---|