Implement several enhancements to NUMA policies.
Add a new "interleave" allocation policy which stripes pages across domains with a stride or width keeping contiguity within a multi-page region. Move the kernel to the dedicated numbered cpuset #2 making it possible to assign kernel threads and memory policy separately from user. This also eliminates the need for the complicated interrupt binding code. Add a sysctl API for viewing and manipulating domainsets. Refactor some of the cpuset_t manipulation code using the generic bitset type so that it can be used for both. This probably belongs in a dedicated subr file. Attempt to improve the include situation. Reviewed by: kib Discussed with: jhb (cpuset parts) Tested by: pho (before review feedback) Sponsored by: Netflix, Dell/EMC Isilon Differential Revision: https://reviews.freebsd.org/D14839
This commit is contained in:
parent
f967e60cab
commit
c0f64943e7
|
@ -57,4 +57,10 @@ struct t { \
|
|||
*/
|
||||
#define BITSET_DEFINE_VAR(t) BITSET_DEFINE(t, 1)
|
||||
|
||||
/*
|
||||
* Define a default type that can be used while manually specifying size
|
||||
* to every call.
|
||||
*/
|
||||
BITSET_DEFINE(bitset, 1);
|
||||
|
||||
#endif /* !_SYS__BITSET_H_ */
|
||||
|
|
Loading…
Reference in New Issue