]> git.sesse.net Git - x264/commit
Transparent hugepage support
authorHenrik Gramner <henrik@gramner.com>
Mon, 8 Jul 2013 19:06:42 +0000 (12:06 -0700)
committerFiona Glaser <fiona@x264.com>
Fri, 23 Aug 2013 21:04:12 +0000 (14:04 -0700)
commitfa1e2b746d95575b5c5b8e49fcfcad3ded9a5420
tree11f2802d3aff88a0cce37a16f38ea49f462fd77d
parente33aac9aba5c6b9c867b92f14c7722152680a61a
Transparent hugepage support

Combine frame and mb data mallocs into a single large malloc.
Additionally, on Linux systems with hugepage support, ask for hugepages on
large mallocs.

This gives a small performance improvement (~0.2-0.9%) on systems without
hugepage support, as well as a small memory footprint reduction.

On recent Linux kernels with hugepage support enabled (set to madvise or
always), it improves performance up to 4% at the cost of about 7-12% more
memory usage on typical settings..

It may help even more on Haswell and other recent CPUs with improved 2MB page
support in hardware.
common/common.c
common/common.h
common/frame.c
common/frame.h
common/macroblock.c
configure
encoder/encoder.c