Re: [PATCH v1 1/1] perf: Optimistically use high order allocations for AUX buffers

From: Alexander Shishkin
Date: Fri Feb 22 2019 - 07:57:10 EST


Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx> writes:

> Currently, the AUX buffer allocator will use high-order allocations
> for PMUs that don't support hardware scatter-gather chaining to ensure
> large contiguous blocks of pages, and always use an array of single
> pages otherwise.
>
> There is, however, a tangible performance benefit in using larger chunks
> of contiguous memory even in the latter case, that comes from not having
> to fetch the next page's address at every page boundary. In particular,
> a task running under Intel PT on an Atom CPU shows 1.5%-2% less runtime
> penalty with a single multi-page output region in snapshot mode (no PMI)
> than with multiple single-page output regions, from ~6% down to ~4%. For
> the snapshot mode it does make a difference as it is intended to run over
> long periods of time.
>
> For this reason, change the allocation policy to always optimistically
> start with the highest possible order when allocating pages for the AUX
> buffer, desceding until the allocation succeeds or order zero allocation
> fails.
>
> Signed-off-by: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>

Does anybody want to pick this up?

Thanks,
--
Alex