On Thu, 9 Jan 2020 18:07:15 +0100 Michal Hocko <mhocko@xxxxxxxx> wrote: > On Thu 09-01-20 18:03:25, Michal Hocko wrote: > > I might misremember but RCU based VMA handling has > > been considered in the past. I do not remember details but there were > > some problems and page tables allocation is not the biggest one. > > I have found https://pdos.csail.mit.edu/papers/rcuvm:asplos12.pdf in my > notes. I managed to forget everything but maybe it will be useful for a > reference. The subsequent work from the authors (https://people.csail.mit.edu/nickolai/papers/clements-radixvm-2014-08-05.pdf) might be also useful for the understanding of the limitations found from the work. I also forgot many details but as far as I remember, the biggest problem with the rcuvm was the update side scalability limitation that results from the single updater lock and the TLB invalidations. I has also internally implemented another RCU based vm that utilizing fine-grained update side synchronization. The write side performance of my version was therefore much improved, but it also dropped the performance at the end with heavily write-intensive workloads due to the TLB flush overhead. Page table allocations weren't bothered me at that time. Thanks, SeongJae Park > -- > Michal Hocko > SUSE Labs > >