On Fri, 18 Feb 2022 10:21:27 +0800 Xin Hao <xhao@xxxxxxxxxxxxxxxxx> wrote: > Hi SeongJae: > > On 2/17/22 4:29 PM, SeongJae Park wrote: > > + David Rientjes, who has shown interest[1] in this topic. > > > > [1] https://lore.kernel.org/linux-mm/bcc8d9a0-81d-5f34-5e4-fcc28eb7ce@xxxxxxxxxx/ > > > > --- > > > > Hi Xin, > > > > > > Thank you always for great patches! > > > > On Wed, 16 Feb 2022 16:30:36 +0800 Xin Hao <xhao@xxxxxxxxxxxxxxxxx> wrote: > > [...] > > I'd like to comment on the high level design at the moment. To my > > understanding, this patchset extends DAMON core and monitoring operations for > > virtual address spaces (vaddr) and the physical address space (paddr) to > > monitor NUMA-local/remote accesses via PROT_NONE and page faults mechanism. > > > > The underlying mechanism for NUMA-local/remote accesses (PROT_NONE and page > > fault) looks ok to me. But, changes to the core and vaddr/paddr operations > > looks unnecessary, to me. That's also not for general use cases. > You are right, adding NUMA access statistics does make the PA & VA codes > look confusing。 > > > > I think it would be simpler to implment more monitoring operations for NUMA > > monitoring use case (one for NUMA-local accesses accounting and another one for > > NUMA-remote accesses accounting), alongside vaddr and paddr. Then, users could > > configure DAMON to have three monitoring contexts (one with vaddr ops, second > > one with numa-local ops, and third one with numa-remote ops), run those > > concurrently, then show the three results and make some decisions like > > migrations. > > Thanks for your advice, I will implement these in the next version, But > from my understanding or maybe > > I didn't get what you were thinking, I think only one monitor context is > needed for NUMA Local & Remote, > > Do not need a separate implementation like "numa_local_ops" and > "numa_remote_ops", just set "numa_access_ops" is ok. Sorry for insufficient explanation of my concern. In short, I'm concerning about the regions adjustment. You may do so by storing NUMA-local access count and NUMA-remote access count in the nr_acceses filed of each region, e.g., saving NUMA-local access count in upper-half bits of nr_accesses and saving NUMA-remote access count in the lower-half bits. However, then DAMON will do the regions adjustment based on the NUMA-local/remote accesses count mixed value, so the accuracy would be degraded. So I think we need to implement each monitoring operations set for each accesses that we want to monitor. > > > > > One additional advantage of this approach is that the accuracy for > > NUMA-local/remote accessed could be better, because the contexts configured to > > use NUMA-local/remote monitoring ops will do the regions adjustment with > > NUMA-local/remote accesses (to my understanding, this patchset let regions have > > NUMA-local/remote accesses counter in addition to the total one, but still use > > only the total one for the regions adjustment). My previous comment above might help clarifying my concern. If I'm missing something, please let me know. Thanks, SJ > > > > If I'm missing something, please let me know. > > > > > > Thanks, > > SJ > > > >> -- > >> 2.27.0 > > -- > Best Regards! > Xin Hao >