A proposal for a new GstAllocator: use disk storage instead of memory

Krzysztof Konopko krzysztof.konopko at youview.com
Mon Jan 7 08:12:45 PST 2013


Hi all,

I have a proposal for a new allocator deriving from GstAllocator:
GstFileMemAllocator.

Rationale
---------
The default allocator uses virtual memory which might be inconvenient
when there's a demand to keep large amount of buffers (e. g. a media
ring buffer) while the amount of physical memory is limited (e. g. an
embedded system).

Given that the disk space is available instead, GstFileMemAllocator
offers memory blocks which are mapped to file system blocks in a
temporary file. The idea is to get memory blocks mapped to chunks of a
file (mmap() on *nix). This way it's up to the OS to page them out and
in when needed while keeping memory use to the minimum.

This is particularly useful on systems where physical memory is scarce
while the address space (VM) is still available.

More details here:
https://bugzilla.gnome.org/show_bug.cgi?id=691299

Anyone interested?
Comments are very welcomed.

Thanks,
Kris


More information about the gstreamer-devel mailing list