NUMA API for 2.5.12 (1/4)
PATCH 1/1 NUMA API for 2.5.12 (1/4)
Ok all,
I'm going to go ahead and assume (hope) that the no response on the last
posting was because the patch was really large. We'll try this again with 4 smaller patches and see what happens.
This patch implements the NUMA API specified at:
http://lse.sourceforge.net/numa/numa_api.html for the 2.5.12 version of the kernel. The API implements such features as binding processes to CPUs (similar to Robert Love's recent patch), binding to memory blocks, setting launch policies for processes, and rudimentary topology features. The patch is currently used via a prctl() interface with a possible /proc interface in the future. I also have a syscall version if that is preferred.
Again, this is a slightly cleaned-up, and (more) bite-sized version of the
previous patch sent out...
Enjoy, and please send me any comments on the patch, or the API it implements!
-Matt
[email protected]
arch/i386/Config.help +7 -0
@@ -48,6 +48,13 @@ You will need a new lynxer.elf file to flash your firmware with - send email to [email protected] +CONFIG_NUMA_API + This option is used to turn on support for the NUMA API, which allows + the binding of processes to specific processors/nodes/memory blocks. + This option is also used for some of the NUMA Topology features. + Please email Matthew Dobson <[email protected]> with questions + and/or concerns. + CONFIG_X86_UP_IOAPIC An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an SMP-capable replacement for PC-style interrupt controllers. Most
arch/i386/config.in +1 -0
@@ -198,6 +198,7 @@ fi else bool 'Multiquad NUMA system' CONFIG_MULTIQUAD + bool 'Non-Uniform Memory Access API support' CONFIG_NUMA_API fi if [ "$CONFIG_SMP" = "y" -o "$CONFIG_PREEMPT" = "y" ]; then
include/asm-i386/core_ibmnumaq.h +60 -0
60 lines not on this page · raw message
+#endif /* _ASM_CORE_IBMNUMAQ_H_ */
include/asm-i386/mmzone.h +44 -0
44 lines not on this page · raw message
+#endif /* _ASM_MMZONE_H_ */