On 9/4/18 2:28 PM, Daniel Jordan wrote: > Pavel Tatashin, Ying Huang, and I are excited to be organizing a performance and scalability microconference this year at Plumbers[*], which is happening in Vancouver this year. The microconference is scheduled for the morning of the second day (Wed, Nov 14). > > We have a preliminary agenda and a list of confirmed and interested attendees (cc'ed), and are seeking more of both! > > Some of the items on the agenda as it stands now are: > > - Promoting huge page usage: With memory sizes becoming ever larger, huge pages are becoming more and more important to reduce TLB misses and the overhead of memory management itself--that is, to make the system scalable with the memory size. But there are still some remaining gaps that prevent huge pages from being deployed in some situations, such as huge page allocation latency and memory fragmentation. > > - Reducing the number of users of mmap_sem: This semaphore is frequently used throughout the kernel. In order to facilitate scaling this longstanding bottleneck, these uses should be documented and unnecessary users should be fixed. > > - Parallelizing cpu-intensive kernel work: Resolve problems of past approaches including extra threads interfering with other processes, playing well with power management, and proper cgroup accounting for the extra threads. Bonus topic: proper accounting of workqueue threads running on behalf of cgroups. > > - Preserving userland during kexec with a hibernation-like mechanism. > > These center around our interests, but having lots of topics to choose from ensures we cover what's most important to the community, so we would like to hear about additional topics and extensions to those listed here. This includes, but is certainly not limited to, work in progress that would benefit from in-person discussion, real-world performance problems, and experimental and academic work. > > If you haven't already done so, please let us know if you are interested in attending, or have suggestions for other attendees. Hi Daniel and all, I'm interested in the first 3 of those 4 topics, so if it doesn't conflict with HMM topics or fix-gup-with-dma topics, I'd like to attend. GPUs generally need to access large chunks of memory, and that includes migrating (dma-copying) pages around. So for example a multi-threaded migration of huge pages between normal RAM and GPU memory is an intriguing direction (and I realize that it's a well-known topic, already). Doing that properly (how many threads to use?) seems like it requires scheduler interaction. It's also interesting that there are two main huge page systems (THP and Hugetlbfs), and I sometimes wonder the obvious thing to wonder: are these sufficiently different to warrant remaining separate, long-term? Yes, I realize they're quite different in some ways, but still, one wonders. :) thanks, -- John Hubbard NVIDIA