Lines Matching +full:interleave +full:- +full:mode
12 supported platforms with Non-Uniform Memory Access architectures since 2.4.?.
18 (``Documentation/admin-guide/cgroup-v1/cpusets.rst``)
21 programming interface that a NUMA-aware application can take advantage of. When
30 ------------------------
41 up, the system default policy will be set to interleave
43 not to overload the initial boot node with boot-time
47 this is an optional, per-task policy. When defined for a
63 In a multi-threaded task, task policies apply only to the thread
100 mapping-- i.e., at Copy-On-Write.
103 virtual address space--a.k.a. threads--independent of when
108 are NOT inheritable across exec(). Thus, only NUMA-aware
111 * A task may install a new VMA policy on a sub-range of a
128 policies--using the mbind() system call specifying a range of
140 support allocation at fault time--a.k.a lazy allocation--so hugetlbfs
163 -----------------------------
165 A NUMA memory policy consists of a "mode", optional mode flags, and
166 an optional set of nodes. The mode determines the behavior of the
167 policy, the optional mode flags determine the behavior of the mode,
177 Default Mode--MPOL_DEFAULT
178 This mode is only used in the memory policy APIs. Internally,
180 policy scopes. Any existing non-default policy will simply be
189 When specified in one of the memory policy APIs, the Default mode
193 be non-empty.
196 This mode specifies that memory must come from the set of
202 This mode specifies that the allocation should be attempted
208 Internally, the Preferred policy uses a single node--the
210 mode flag MPOL_F_LOCAL is set, the preferred_node is ignored
218 mode. If an empty nodemask is passed, the policy cannot use
223 This mode specifies that page allocations be interleaved, on a
225 This mode also behaves slightly differently, based on the
229 Interleave mode indexes the set of nodes specified by the
238 For allocation of page cache pages, Interleave mode indexes
246 interleaved system default policy works in this mode.
249 This mode specifices that the allocation should be preferrably
255 NUMA memory policy supports the following optional mode flags:
264 Many), preferred node (Preferred) or nodemask (Bind, Interleave) is
268 With this flag, if the user-specified nodes overlap with the
274 mems 1-3 that sets an Interleave policy over the same set. If
275 the cpuset's mems change to 3-5, the Interleave will now occur
277 3 is allowed from the user's nodemask, the "interleave" only
289 set of allowed nodes. The kernel stores the user-passed nodemask,
295 nodes, the node (Preferred) or nodemask (Bind, Interleave) is
299 1,3,5 may be remapped to 7-9 and then to 1-3 if the set of
306 Bind or Interleave case, the third and fifth) nodes in the set of
312 the user's nodemask when the set of allowed nodes is only 0-3),
317 mems 2-5 that sets an Interleave policy over the same set with
318 MPOL_F_RELATIVE_NODES. If the cpuset's mems change to 3-7, the
319 interleave now occurs over nodes 3,5-7. If the cpuset's mems
320 then change to 0,2-3,5, then the interleave occurs over nodes
321 0,2-3,5.
327 memory nodes 0 to N-1, where N is the number of memory nodes the
352 During run-time "usage" of the policy, we attempt to minimize atomic operations
360 2) examination of the policy to determine the policy mode and associated node
393 used for non-shared policies. For this reason, shared policies are marked
394 as such, and the extra reference is dropped "conditionally"--i.e., only
419 prefix, are defined in <linux/syscalls.h>; the mode and flag
424 long set_mempolicy(int mode, const unsigned long *nmask,
427 Set's the calling task's "task/process memory policy" to mode
428 specified by the 'mode' argument and the set of nodes defined by
430 'maxnode' ids. Optional mode flags may be passed by combining the
431 'mode' argument with the flag (for example: MPOL_INTERLEAVE |
439 long get_mempolicy(int *mode,
452 long mbind(void *start, unsigned long len, int mode,
456 mbind() installs the policy specified by (mode, nmask, maxnodes) as a
488 The numactl(8) tool is packaged with the run-time version of the library
490 package the headers and compile-time libraries in a separate development