Large Memory Sysfs Scaling - Seth Jennings, IBM
Channel: Linux Plumbers Conference
Date: 2013-10-15

"The userspace sysfs interface for physical memory configuration is defined in drivers/base/memory.c and normally mounted at /sys/devices/system/memory. A memoryX entry is created for each memory block in the system. Before early 2011, there was a memory entry created for each memory section. This quickly became a bottleneck and the interface was modified to have one entry for a block of memory sections. However, this solution is also incomplete as systems continue to have larger and larger memory capacities and time to create the sysfs entries for each memory block continues to scale linearly with RAM capacity. This can lead to very long boot times, on the order of hours, for systems with terabytes of RAM.
The goal of this session would be to discuss the design of a new sysfs memory configuration interface that takes constant time to initialize regardless of the memory size. This would likely be an on-demand approach and impacts to userspace tools would need to be considered." http://www.linuxplumbersconf.org/2013/