diff options
author | de Dinechin, Christophe (Integrity VM) <[email protected]> | 2007-12-13 15:03:07 +0000 |
---|---|---|
committer | Tony Luck <[email protected]> | 2007-12-18 16:56:50 -0800 |
commit | aec103bfa60e9f72bd66a144236592f54b986a03 (patch) | |
tree | 90c1cf2de8853dd6e3972f295d1aecfe3aee507a /fs/jbd2/commit.c | |
parent | 3cdc7fc7fd5bd1ead75758dfadef609a6e9fd3de (diff) |
[IA64] Avoid unnecessary TLB flushes when allocating memory
Improve performance of memory allocations on ia64 by avoiding a global TLB
purge to purge a single page from the file cache. This happens whenever we
evict a page from the buffer cache to make room for some other allocation.
Test case: Run 'find /usr -type f | xargs cat > /dev/null' in the
background to fill the buffer cache, then run something that uses memory,
e.g. 'gmake -j50 install'. Instrumentation showed that the number of
global TLB purges went from a few millions down to about 170 over a 12
hours run of the above.
The performance impact is particularly noticeable under virtualization,
because a virtual TLB is generally both larger and slower to purge than
a physical one.
Signed-off-by: Christophe de Dinechin <[email protected]>
Signed-off-by: Tony Luck <[email protected]>
Diffstat (limited to 'fs/jbd2/commit.c')
0 files changed, 0 insertions, 0 deletions