Re: [PATCH v6 00/14] Introduce Data Access MONitor (DAMON)

From: SeongJae Park
Date: Mon Mar 02 2020 - 06:36:07 EST


Hello,

On Mon, 24 Feb 2020 13:30:33 +0100 SeongJae Park <sjpark@xxxxxxxxxx> wrote:

> From: SeongJae Park <sjpark@xxxxxxxxx>
>
> Introduction
> ============
>
> Memory management decisions can be improved if finer data access information is
> available. However, because such finer information usually comes with higher
> overhead, most systems including Linux forgives the potential improvement and
> rely on only coarse information or some light-weight heuristics. The
> pseudo-LRU and the aggressive THP promotions are such examples.
>
> A number of experimental data access pattern awared memory management
> optimizations (refer to 'Appendix A' for more details) say the sacrifices are
> huge. However, none of those has successfully adopted to Linux kernel mainly
> due to the absence of a scalable and efficient data access monitoring
> mechanism. Refer to 'Appendix B' to see the limitations of existing memory
> monitoring mechanisms.
>
> DAMON is a data access monitoring subsystem for the problem. It is 1) accurate
> enough to be used for the DRAM level memory management (a straightforward
> DAMON-based optimization achieved up to 2.55x speedup), 2) light-weight enough
> to be applied online (compared to a straightforward access monitoring scheme,
> DAMON is up to 94.242.42x lighter) and 3) keeps predefined upper-bound overhead
> regardless of the size of target workloads (thus scalable). Refer to 'Appendix
> C' if you interested in how it is possible.
>
> DAMON has mainly designed for the kernel's memory management mechanisms.
> However, because it is implemented as a standalone kernel module and provides
> several interfaces, it can be used by a wide range of users including kernel
> space programs, user space programs, programmers, and administrators. DAMON
> is now supporting the monitoring only, but it will also provide simple and
> convenient data access pattern awared memory managements by itself. Refer to
> 'Appendix D' for more detailed expected usages of DAMON.

I have posted this patchset once per week, but skip this week because there
were no comments in last week and therefore made no change in the patchset.

I think I answered to all previous comments and fixed all bugs previously
found. May I ask some more comments or reviews? If I missed something or
doing wrong, please let me know.


Thanks,
SeongJae Park

[...]