On Thu, Aug 20, 2020 at 12:11 AM SeongJae Park <sjpark@xxxxxxxxxx> wrote: > > On Wed, 19 Aug 2020 18:21:44 -0700 Shakeel Butt <shakeelb@xxxxxxxxxx> wrote: > > > On Tue, Aug 18, 2020 at 12:25 AM SeongJae Park <sjpark@xxxxxxxxxx> wrote: > > > > > > From: SeongJae Park <sjpark@xxxxxxxxx> > > > > > > Changes from Previous Version > > > ============================= > > > > > > - Use 42 as the fake target id for paddr instead of -1 > > > - Fix a typo > > > > > > Introduction > > > ============ > > > > > > DAMON[1] programming interface users can extend DAMON for any address space by > > > configuring the address-space specific low level primitives with appropriate > > > ones including their own implementations. However, because the implementation > > > for the virtual address space is only available now, the users should implement > > > their own for other address spaces. Worse yet, the user space users who rely > > > on the debugfs interface and user space tool, cannot implement their own. > > > > > > This patchset implements another reference implementation of the low level > > > primitives for the physical memory address space. With this change, hence, the > > > kernel space users can monitor both the virtual and the physical address spaces > > > by simply changing the configuration in the runtime. Further, this patchset > > > links the implementation to the debugfs interface and the user space tool for > > > the user space users. > > > > > > Note that the implementation supports only the user memory, as same to the idle > > > page access tracking feature. > > > > > > [1] https://lore.kernel.org/linux-mm/20200706115322.29598-1-sjpark@xxxxxxxxxx/ > > > > > > > I am still struggling to find the benefit of this feature the way it > > is implemented i.e. region based physical address space monitoring. > > What exactly am I supposed to do for a given hot (or cold) physical > > region? In a containerized world, that region can contain pages from > > any cgroup. I can not really do anything about the accesses PHY-DAMON > > provides me for a region. > > Technically speaking, this patchset introduces an implementation of DAMON's low > level primitives for physical address space of LRU-listed pages. In other > words, it is not designed for cgroups case. So, this RFC is for a system running a single workload which comprises multiple processes. Instead of registering each process with DAMON, just monitor the whole physical memory, right? Though I am still not sure how the output from DAMON can be used in this case. DAMON told me a physical region is cold, how do I find out processes that have mapped the pages in that region to do process_madvise(PAGEOUT) on them?