summaryrefslogtreecommitdiffstats
path: root/templates/man7/cpuset.7.pot
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--templates/man7/cpuset.7.pot2510
1 files changed, 2510 insertions, 0 deletions
diff --git a/templates/man7/cpuset.7.pot b/templates/man7/cpuset.7.pot
new file mode 100644
index 00000000..ab743ef2
--- /dev/null
+++ b/templates/man7/cpuset.7.pot
@@ -0,0 +1,2510 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2024-03-01 16:54+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: TH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "cpuset"
+msgstr ""
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr ""
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NAME"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "cpuset - confine processes to processor and memory node subsets"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "DESCRIPTION"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The cpuset filesystem is a pseudo-filesystem interface to the kernel cpuset "
+"mechanism, which is used to control the processor placement and memory "
+"placement of processes. It is commonly mounted at I</dev/cpuset>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On systems with kernels compiled with built in support for cpusets, all "
+"processes are attached to a cpuset, and cpusets are always present. If a "
+"system supports cpusets, then it will have the entry B<nodev cpuset> in the "
+"file I</proc/filesystems>. By mounting the cpuset filesystem (see the "
+"B<EXAMPLES> section below), the administrator can configure the cpusets on a "
+"system to control the processor and memory placement of processes on that "
+"system. By default, if the cpuset configuration on a system is not modified "
+"or if the cpuset filesystem is not even mounted, then the cpuset mechanism, "
+"though present, has no effect on the system's behavior."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "A cpuset defines a list of CPUs and memory nodes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The CPUs of a system include all the logical processing units on which a "
+"process can execute, including, if present, multiple processor cores within "
+"a package and Hyper-Threads within a processor core. Memory nodes include "
+"all distinct banks of main memory; small and SMP systems typically have just "
+"one memory node that contains all the system's main memory, while NUMA (non-"
+"uniform memory access) systems have multiple memory nodes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Cpusets are represented as directories in a hierarchical pseudo-filesystem, "
+"where the top directory in the hierarchy (I</dev/cpuset>) represents the "
+"entire system (all online CPUs and memory nodes) and any cpuset that is the "
+"child (descendant) of another parent cpuset contains a subset of that "
+"parent's CPUs and memory nodes. The directories and files representing "
+"cpusets have normal filesystem permissions."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Every process in the system belongs to exactly one cpuset. A process is "
+"confined to run only on the CPUs in the cpuset it belongs to, and to "
+"allocate memory only on the memory nodes in that cpuset. When a process "
+"B<fork>(2)s, the child process is placed in the same cpuset as its parent. "
+"With sufficient privilege, a process may be moved from one cpuset to another "
+"and the allowed CPUs and memory nodes of an existing cpuset may be changed."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When the system begins booting, a single cpuset is defined that includes all "
+"CPUs and memory nodes on the system, and all processes are in that cpuset. "
+"During the boot process, or later during normal system operation, other "
+"cpusets may be created, as subdirectories of this top cpuset, under the "
+"control of the system administrator, and processes may be placed in these "
+"other cpusets."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Cpusets are integrated with the B<sched_setaffinity>(2) scheduling affinity "
+"mechanism and the B<mbind>(2) and B<set_mempolicy>(2) memory-placement "
+"mechanisms in the kernel. Neither of these mechanisms let a process make "
+"use of a CPU or memory node that is not allowed by that process's cpuset. "
+"If changes to a process's cpuset placement conflict with these other "
+"mechanisms, then cpuset placement is enforced even if it means overriding "
+"these other mechanisms. The kernel accomplishes this overriding by silently "
+"restricting the CPUs and memory nodes requested by these other mechanisms to "
+"those allowed by the invoking process's cpuset. This can result in these "
+"other calls returning an error, if for example, such a call ends up "
+"requesting an empty set of CPUs or memory nodes, after that request is "
+"restricted to the invoking process's cpuset."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Typically, a cpuset is used to manage the CPU and memory-node confinement "
+"for a set of cooperating processes such as a batch scheduler job, and these "
+"other mechanisms are used to manage the placement of individual processes or "
+"memory regions within that set or job."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "FILES"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Each directory below I</dev/cpuset> represents a cpuset and contains a fixed "
+"set of pseudo-files describing the state of that cpuset."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"New cpusets are created using the B<mkdir>(2) system call or the "
+"B<mkdir>(1) command. The properties of a cpuset, such as its flags, "
+"allowed CPUs and memory nodes, and attached processes, are queried and "
+"modified by reading or writing to the appropriate file in that cpuset's "
+"directory, as listed below."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The pseudo-files in each cpuset directory are automatically created when the "
+"cpuset is created, as a result of the B<mkdir>(2) invocation. It is not "
+"possible to directly add or remove these pseudo-files."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A cpuset directory that contains no child cpuset directories, and has no "
+"attached processes, can be removed using B<rmdir>(2) or B<rmdir>(1). It is "
+"not necessary, or possible, to remove the pseudo-files inside the directory "
+"before removing it."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The pseudo-files in each cpuset directory are small text files that may be "
+"read and written using traditional shell utilities such as B<cat>(1), and "
+"B<echo>(1), or from a program by using file I/O library functions or system "
+"calls, such as B<open>(2), B<read>(2), B<write>(2), and B<close>(2)."
+msgstr ""
+
+#. ====================== tasks ======================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The pseudo-files in a cpuset directory represent internal kernel state and "
+"do not have any persistent image on disk. Each of these per-cpuset files is "
+"listed and described below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<tasks>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"List of the process IDs (PIDs) of the processes in that cpuset. The list is "
+"formatted as a series of ASCII decimal numbers, each followed by a newline. "
+"A process may be added to a cpuset (automatically removing it from the "
+"cpuset that previously contained it) by writing its PID to that cpuset's "
+"I<tasks> file (with or without a trailing newline)."
+msgstr ""
+
+#. =================== notify_on_release ===================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<Warning:> only one PID may be written to the I<tasks> file at a time. If "
+"a string is written that contains more than one PID, only the first one will "
+"be used."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<notify_on_release>"
+msgstr ""
+
+#. ====================== cpus ======================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), that cpuset will receive special handling after "
+"it is released, that is, after all processes cease using it (i.e., terminate "
+"or are moved to a different cpuset) and all child cpuset directories have "
+"been removed. See the B<Notify On Release> section, below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.cpus>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"List of the physical numbers of the CPUs on which processes in that cpuset "
+"are allowed to execute. See B<List Format> below for a description of the "
+"format of I<cpus>."
+msgstr ""
+
+#. ==================== cpu_exclusive ====================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The CPUs allowed to a cpuset may be changed by writing a new list to its "
+"I<cpus> file."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.cpu_exclusive>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), the cpuset has exclusive use of its CPUs (no "
+"sibling or cousin cpuset may overlap CPUs). By default, this is off (0). "
+"Newly created cpusets also initially default this to off (0)."
+msgstr ""
+
+#. ====================== mems ======================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Two cpusets are I<sibling> cpusets if they share the same parent cpuset in "
+"the I</dev/cpuset> hierarchy. Two cpusets are I<cousin> cpusets if neither "
+"is the ancestor of the other. Regardless of the I<cpu_exclusive> setting, "
+"if one cpuset is the ancestor of another, and if both of these cpusets have "
+"nonempty I<cpus>, then their I<cpus> must overlap, because the I<cpus> of "
+"any cpuset are always a subset of the I<cpus> of its parent cpuset."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.mems>"
+msgstr ""
+
+#. ==================== mem_exclusive ====================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"List of memory nodes on which processes in this cpuset are allowed to "
+"allocate memory. See B<List Format> below for a description of the format "
+"of I<mems>."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.mem_exclusive>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), the cpuset has exclusive use of its memory nodes "
+"(no sibling or cousin may overlap). Also if set (1), the cpuset is a "
+"B<Hardwall> cpuset (see below). By default, this is off (0). Newly created "
+"cpusets also initially default this to off (0)."
+msgstr ""
+
+#. ==================== mem_hardwall ====================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Regardless of the I<mem_exclusive> setting, if one cpuset is the ancestor of "
+"another, then their memory nodes must overlap, because the memory nodes of "
+"any cpuset are always a subset of the memory nodes of that cpuset's parent "
+"cpuset."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.mem_hardwall> (since Linux 2.6.26)"
+msgstr ""
+
+#. ==================== memory_migrate ====================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), the cpuset is a B<Hardwall> cpuset (see below). "
+"Unlike B<mem_exclusive>, there is no constraint on whether cpusets marked "
+"B<mem_hardwall> may have overlapping memory nodes with sibling or cousin "
+"cpusets. By default, this is off (0). Newly created cpusets also initially "
+"default this to off (0)."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.memory_migrate> (since Linux 2.6.16)"
+msgstr ""
+
+#. ==================== memory_pressure ====================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), then memory migration is enabled. By default, "
+"this is off (0). See the B<Memory Migration> section, below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.memory_pressure> (since Linux 2.6.16)"
+msgstr ""
+
+#. ================= memory_pressure_enabled =================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A measure of how much memory pressure the processes in this cpuset are "
+"causing. See the B<Memory Pressure> section, below. Unless "
+"I<memory_pressure_enabled> is enabled, always has value zero (0). This file "
+"is read-only. See the B<WARNINGS> section, below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.memory_pressure_enabled> (since Linux 2.6.16)"
+msgstr ""
+
+#. ================== memory_spread_page ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). This file is present only in the root cpuset, normally I</"
+"dev/cpuset>. If set (1), the I<memory_pressure> calculations are enabled "
+"for all cpusets in the system. By default, this is off (0). See the "
+"B<Memory Pressure> section, below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.memory_spread_page> (since Linux 2.6.17)"
+msgstr ""
+
+#. ================== memory_spread_slab ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), pages in the kernel page cache (filesystem "
+"buffers) are uniformly spread across the cpuset. By default, this is off "
+"(0) in the top cpuset, and inherited from the parent cpuset in newly created "
+"cpusets. See the B<Memory Spread> section, below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.memory_spread_slab> (since Linux 2.6.17)"
+msgstr ""
+
+#. ================== sched_load_balance ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1), the kernel slab caches for file I/O (directory "
+"and inode structures) are uniformly spread across the cpuset. By default, "
+"is off (0) in the top cpuset, and inherited from the parent cpuset in newly "
+"created cpusets. See the B<Memory Spread> section, below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.sched_load_balance> (since Linux 2.6.24)"
+msgstr ""
+
+#. ================== sched_relax_domain_level ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Flag (0 or 1). If set (1, the default) the kernel will automatically load "
+"balance processes in that cpuset over the allowed CPUs in that cpuset. If "
+"cleared (0) the kernel will avoid load balancing processes in this cpuset, "
+"I<unless> some other cpuset with overlapping CPUs has its "
+"I<sched_load_balance> flag set. See B<Scheduler Load Balancing>, below, for "
+"further details."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "I<cpuset.sched_relax_domain_level> (since Linux 2.6.26)"
+msgstr ""
+
+#. ================== proc cpuset ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Integer, between -1 and a small positive value. The "
+"I<sched_relax_domain_level> controls the width of the range of CPUs over "
+"which the kernel scheduler performs immediate rebalancing of runnable tasks "
+"across CPUs. If I<sched_load_balance> is disabled, then the setting of "
+"I<sched_relax_domain_level> does not matter, as no such load balancing is "
+"done. If I<sched_load_balance> is enabled, then the higher the value of the "
+"I<sched_relax_domain_level>, the wider the range of CPUs over which "
+"immediate load balancing is attempted. See B<Scheduler Relax Domain Level>, "
+"below, for further details."
+msgstr ""
+
+#. ================== proc status ==================
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"In addition to the above pseudo-files in each directory below I</dev/"
+"cpuset>, each process has a pseudo-file, I</proc/>pidI</cpuset>, that "
+"displays the path of the process's cpuset directory relative to the root of "
+"the cpuset filesystem."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Also the I</proc/>pidI</status> file for each process has four added lines, "
+"displaying the process's I<Cpus_allowed> (on which CPUs it may be scheduled) "
+"and I<Mems_allowed> (on which memory nodes it may obtain memory), in the two "
+"formats B<Mask Format> and B<List Format> (see below) as shown in the "
+"following example:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"Cpus_allowed: ffffffff,ffffffff,ffffffff,ffffffff\n"
+"Cpus_allowed_list: 0-127\n"
+"Mems_allowed: ffffffff,ffffffff\n"
+"Mems_allowed_list: 0-63\n"
+msgstr ""
+
+#. ================== EXTENDED CAPABILITIES ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The \"allowed\" fields were added in Linux 2.6.24; the \"allowed_list\" "
+"fields were added in Linux 2.6.26."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXTENDED CAPABILITIES"
+msgstr ""
+
+#. ================== Exclusive Cpusets ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"In addition to controlling which I<cpus> and I<mems> a process is allowed to "
+"use, cpusets provide the following extended capabilities."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Exclusive cpusets"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If a cpuset is marked I<cpu_exclusive> or I<mem_exclusive>, no other cpuset, "
+"other than a direct ancestor or descendant, may share any of the same CPUs "
+"or memory nodes."
+msgstr ""
+
+#. ================== Hardwall ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A cpuset that is I<mem_exclusive> restricts kernel allocations for buffer "
+"cache pages and other internal kernel data pages commonly shared by the "
+"kernel across multiple users. All cpusets, whether I<mem_exclusive> or not, "
+"restrict allocations of memory for user space. This enables configuring a "
+"system so that several independent jobs can share common kernel data, while "
+"isolating each job's user allocation in its own cpuset. To do this, "
+"construct a large I<mem_exclusive> cpuset to hold all the jobs, and "
+"construct child, non-I<mem_exclusive> cpusets for each individual job. Only "
+"a small amount of kernel memory, such as requests from interrupt handlers, "
+"is allowed to be placed on memory nodes outside even a I<mem_exclusive> "
+"cpuset."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Hardwall"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A cpuset that has I<mem_exclusive> or I<mem_hardwall> set is a I<hardwall> "
+"cpuset. A I<hardwall> cpuset restricts kernel allocations for page, buffer, "
+"and other data commonly shared by the kernel across multiple users. All "
+"cpusets, whether I<hardwall> or not, restrict allocations of memory for user "
+"space."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"This enables configuring a system so that several independent jobs can share "
+"common kernel data, such as filesystem pages, while isolating each job's "
+"user allocation in its own cpuset. To do this, construct a large "
+"I<hardwall> cpuset to hold all the jobs, and construct child cpusets for "
+"each individual job which are not I<hardwall> cpusets."
+msgstr ""
+
+#. ================== Notify On Release ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Only a small amount of kernel memory, such as requests from interrupt "
+"handlers, is allowed to be taken outside even a I<hardwall> cpuset."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Notify on release"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the I<notify_on_release> flag is enabled (1) in a cpuset, then whenever "
+"the last process in the cpuset leaves (exits or attaches to some other "
+"cpuset) and the last child cpuset of that cpuset is removed, the kernel "
+"will run the command I</sbin/cpuset_release_agent>, supplying the pathname "
+"(relative to the mount point of the cpuset filesystem) of the abandoned "
+"cpuset. This enables automatic removal of abandoned cpusets."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The default value of I<notify_on_release> in the root cpuset at system boot "
+"is disabled (0). The default value of other cpusets at creation is the "
+"current value of their parent's I<notify_on_release> setting."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The command I</sbin/cpuset_release_agent> is invoked, with the name (I</dev/"
+"cpuset> relative path) of the to-be-released cpuset in I<argv[1]>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The usual contents of the command I</sbin/cpuset_release_agent> is simply "
+"the shell script:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"#!/bin/sh\n"
+"rmdir /dev/cpuset/$1\n"
+msgstr ""
+
+#. ================== Memory Pressure ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"As with other flag values below, this flag can be changed by writing an "
+"ASCII number 0 or 1 (with optional trailing newline) into the file, to "
+"clear or set the flag, respectively."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Memory pressure"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<memory_pressure> of a cpuset provides a simple per-cpuset running "
+"average of the rate that the processes in a cpuset are attempting to free up "
+"in-use memory on the nodes of the cpuset to satisfy additional memory "
+"requests."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"This enables batch managers that are monitoring jobs running in dedicated "
+"cpusets to efficiently detect what level of memory pressure that job is "
+"causing."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"This is useful both on tightly managed systems running a wide mix of "
+"submitted jobs, which may choose to terminate or reprioritize jobs that are "
+"trying to use more memory than allowed on the nodes assigned them, and with "
+"tightly coupled, long-running, massively parallel scientific computing jobs "
+"that will dramatically fail to meet required performance goals if they start "
+"to use more memory than allowed to them."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"This mechanism provides a very economical way for the batch manager to "
+"monitor a cpuset for signs of memory pressure. It's up to the batch manager "
+"or other user code to decide what action to take if it detects signs of "
+"memory pressure."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Unless memory pressure calculation is enabled by setting the pseudo-file I</"
+"dev/cpuset/cpuset.memory_pressure_enabled>, it is not computed for any "
+"cpuset, and reads from any I<memory_pressure> always return zero, as "
+"represented by the ASCII string \"0\\en\". See the B<WARNINGS> section, "
+"below."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "A per-cpuset, running average is employed for the following reasons:"
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "\\[bu]"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Because this meter is per-cpuset rather than per-process or per virtual "
+"memory region, the system load imposed by a batch scheduler monitoring this "
+"metric is sharply reduced on large systems, because a scan of the tasklist "
+"can be avoided on each set of queries."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Because this meter is a running average rather than an accumulating counter, "
+"a batch scheduler can detect memory pressure with a single read, instead of "
+"having to read and accumulate results for a period of time."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Because this meter is per-cpuset rather than per-process, the batch "
+"scheduler can obtain the key information\\[em]memory pressure in a "
+"cpuset\\[em]with a single read, rather than having to query and accumulate "
+"results over all the (dynamically changing) set of processes in the cpuset."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<memory_pressure> of a cpuset is calculated using a per-cpuset simple "
+"digital filter that is kept within the kernel. For each cpuset, this filter "
+"tracks the recent rate at which processes attached to that cpuset enter the "
+"kernel direct reclaim code."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The kernel direct reclaim code is entered whenever a process has to satisfy "
+"a memory page request by first finding some other page to repurpose, due to "
+"lack of any readily available already free pages. Dirty filesystem pages "
+"are repurposed by first writing them to disk. Unmodified filesystem buffer "
+"pages are repurposed by simply dropping them, though if that page is needed "
+"again, it will have to be reread from disk."
+msgstr ""
+
+#. ================== Memory Spread ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<cpuset.memory_pressure> file provides an integer number representing "
+"the recent (half-life of 10 seconds) rate of entries to the direct reclaim "
+"code caused by any process in the cpuset, in units of reclaims attempted per "
+"second, times 1000."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Memory spread"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"There are two Boolean flag files per cpuset that control where the kernel "
+"allocates pages for the filesystem buffers and related in-kernel data "
+"structures. They are called I<cpuset.memory_spread_page> and I<cpuset."
+"memory_spread_slab>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the per-cpuset Boolean flag file I<cpuset.memory_spread_page> is set, "
+"then the kernel will spread the filesystem buffers (page cache) evenly over "
+"all the nodes that the faulting process is allowed to use, instead of "
+"preferring to put those pages on the node where the process is running."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the per-cpuset Boolean flag file I<cpuset.memory_spread_slab> is set, "
+"then the kernel will spread some filesystem-related slab caches, such as "
+"those for inodes and directory entries, evenly over all the nodes that the "
+"faulting process is allowed to use, instead of preferring to put those pages "
+"on the node where the process is running."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The setting of these flags does not affect the data segment (see B<brk>(2)) "
+"or stack segment pages of a process."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"By default, both kinds of memory spreading are off and the kernel prefers to "
+"allocate memory pages on the node local to where the requesting process is "
+"running. If that node is not allowed by the process's NUMA memory policy or "
+"cpuset configuration or if there are insufficient free memory pages on that "
+"node, then the kernel looks for the nearest node that is allowed and has "
+"sufficient free memory."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When new cpusets are created, they inherit the memory spread settings of "
+"their parent."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Setting memory spreading causes allocations for the affected page or slab "
+"caches to ignore the process's NUMA memory policy and be spread instead. "
+"However, the effect of these changes in memory placement caused by cpuset-"
+"specified memory spreading is hidden from the B<mbind>(2) or "
+"B<set_mempolicy>(2) calls. These two NUMA memory policy calls always "
+"appear to behave as if no cpuset-specified memory spreading is in effect, "
+"even if it is. If cpuset memory spreading is subsequently turned off, the "
+"NUMA memory policy most recently specified by these calls is automatically "
+"reapplied."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Both I<cpuset.memory_spread_page> and I<cpuset.memory_spread_slab> are "
+"Boolean flag files. By default, they contain \"0\", meaning that the "
+"feature is off for that cpuset. If a \"1\" is written to that file, that "
+"turns the named feature on."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Cpuset-specified memory spreading behaves similarly to what is known (in "
+"other contexts) as round-robin or interleave memory placement."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Cpuset-specified memory spreading can provide substantial performance "
+"improvements for jobs that:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"need to place thread-local data on memory nodes close to the CPUs which are "
+"running the threads that most frequently access that data; but also"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"need to access large filesystem data sets that must to be spread across the "
+"several nodes in the job's cpuset in order to fit."
+msgstr ""
+
+#. ================== Memory Migration ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Without this policy, the memory allocation across the nodes in the job's "
+"cpuset can become very uneven, especially for jobs that might have just a "
+"single thread initializing or reading in the data set."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Memory migration"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Normally, under the default setting (disabled) of I<cpuset.memory_migrate>, "
+"once a page is allocated (given a physical page of main memory), then that "
+"page stays on whatever node it was allocated, so long as it remains "
+"allocated, even if the cpuset's memory-placement policy I<mems> subsequently "
+"changes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When memory migration is enabled in a cpuset, if the I<mems> setting of the "
+"cpuset is changed, then any memory page in use by any process in the cpuset "
+"that is on a memory node that is no longer allowed will be migrated to a "
+"memory node that is allowed."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Furthermore, if a process is moved into a cpuset with I<memory_migrate> "
+"enabled, any memory pages it uses that were on memory nodes allowed in its "
+"previous cpuset, but which are not allowed in its new cpuset, will be "
+"migrated to a memory node allowed in the new cpuset."
+msgstr ""
+
+#. ================== Scheduler Load Balancing ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The relative placement of a migrated page within the cpuset is preserved "
+"during these migration operations if possible. For example, if the page was "
+"on the second valid node of the prior cpuset, then the page will be placed "
+"on the second valid node of the new cpuset, if possible."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Scheduler load balancing"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The kernel scheduler automatically load balances processes. If one CPU is "
+"underutilized, the kernel will look for processes on other more overloaded "
+"CPUs and move those processes to the underutilized CPU, within the "
+"constraints of such placement mechanisms as cpusets and "
+"B<sched_setaffinity>(2)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The algorithmic cost of load balancing and its impact on key shared kernel "
+"data structures such as the process list increases more than linearly with "
+"the number of CPUs being balanced. For example, it costs more to load "
+"balance across one large set of CPUs than it does to balance across two "
+"smaller sets of CPUs, each of half the size of the larger set. (The precise "
+"relationship between the number of CPUs being balanced and the cost of load "
+"balancing depends on implementation details of the kernel process scheduler, "
+"which is subject to change over time, as improved kernel scheduler "
+"algorithms are implemented.)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The per-cpuset flag I<sched_load_balance> provides a mechanism to suppress "
+"this automatic scheduler load balancing in cases where it is not needed and "
+"suppressing it would have worthwhile performance benefits."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"By default, load balancing is done across all CPUs, except those marked "
+"isolated using the kernel boot time \"isolcpus=\" argument. (See "
+"B<Scheduler Relax Domain Level>, below, to change this default.)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"This default load balancing across all CPUs is not well suited to the "
+"following two situations:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On large systems, load balancing across many CPUs is expensive. If the "
+"system is managed using cpusets to place independent jobs on separate sets "
+"of CPUs, full load balancing is unnecessary."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Systems supporting real-time on some CPUs need to minimize system overhead "
+"on those CPUs, including avoiding process load balancing if that is not "
+"needed."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When the per-cpuset flag I<sched_load_balance> is enabled (the default "
+"setting), it requests load balancing across all the CPUs in that cpuset's "
+"allowed CPUs, ensuring that load balancing can move a process (not otherwise "
+"pinned, as by B<sched_setaffinity>(2)) from any CPU in that cpuset to any "
+"other."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When the per-cpuset flag I<sched_load_balance> is disabled, then the "
+"scheduler will avoid load balancing across the CPUs in that cpuset, "
+"I<except> in so far as is necessary because some overlapping cpuset has "
+"I<sched_load_balance> enabled."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"So, for example, if the top cpuset has the flag I<sched_load_balance> "
+"enabled, then the scheduler will load balance across all CPUs, and the "
+"setting of the I<sched_load_balance> flag in other cpusets has no effect, as "
+"we're already fully load balancing."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Therefore in the above two situations, the flag I<sched_load_balance> should "
+"be disabled in the top cpuset, and only some of the smaller, child cpusets "
+"would have this flag enabled."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When doing this, you don't usually want to leave any unpinned processes in "
+"the top cpuset that might use nontrivial amounts of CPU, as such processes "
+"may be artificially constrained to some subset of CPUs, depending on the "
+"particulars of this flag setting in descendant cpusets. Even if such a "
+"process could use spare CPU cycles in some other CPUs, the kernel scheduler "
+"might not consider the possibility of load balancing that process to the "
+"underused CPU."
+msgstr ""
+
+#. ================== Scheduler Relax Domain Level ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Of course, processes pinned to a particular CPU can be left in a cpuset that "
+"disables I<sched_load_balance> as those processes aren't going anywhere else "
+"anyway."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Scheduler relax domain level"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The kernel scheduler performs immediate load balancing whenever a CPU "
+"becomes free or another task becomes runnable. This load balancing works to "
+"ensure that as many CPUs as possible are usefully employed running tasks. "
+"The kernel also performs periodic load balancing off the software clock "
+"described in B<time>(7). The setting of I<sched_relax_domain_level> applies "
+"only to immediate load balancing. Regardless of the "
+"I<sched_relax_domain_level> setting, periodic load balancing is attempted "
+"over all CPUs (unless disabled by turning off I<sched_load_balance>.) In "
+"any case, of course, tasks will be scheduled to run only on CPUs allowed by "
+"their cpuset, as modified by B<sched_setaffinity>(2) system calls."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On small systems, such as those with just a few CPUs, immediate load "
+"balancing is useful to improve system interactivity and to minimize wasteful "
+"idle CPU cycles. But on large systems, attempting immediate load balancing "
+"across a large number of CPUs can be more costly than it is worth, depending "
+"on the particular performance characteristics of the job mix and the "
+"hardware."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The exact meaning of the small integer values of I<sched_relax_domain_level> "
+"will depend on internal implementation details of the kernel scheduler code "
+"and on the non-uniform architecture of the hardware. Both of these will "
+"evolve over time and vary by system architecture and kernel version."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"As of this writing, when this capability was introduced in Linux 2.6.26, on "
+"certain popular architectures, the positive values of "
+"I<sched_relax_domain_level> have the following meanings."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<1>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Perform immediate load balancing across Hyper-Thread siblings on the same "
+"core."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<2>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Perform immediate load balancing across other cores in the same package."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<3>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Perform immediate load balancing across other CPUs on the same node or blade."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<4>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Perform immediate load balancing across over several (implementation detail) "
+"nodes [On NUMA systems]."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<5>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Perform immediate load balancing across over all CPUs in system [On NUMA "
+"systems]."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<sched_relax_domain_level> value of zero (0) always means don't perform "
+"immediate load balancing, hence that load balancing is done only "
+"periodically, not immediately when a CPU becomes available or another task "
+"becomes runnable."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<sched_relax_domain_level> value of minus one (-1) always means use "
+"the system default value. The system default value can vary by architecture "
+"and kernel version. This system default value can be changed by kernel boot-"
+"time \"relax_domain_level=\" argument."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+msgid ""
+"In the case of multiple overlapping cpusets which have conflicting "
+"I<sched_relax_domain_level> values, then the highest such value applies to "
+"all CPUs in any of the overlapping cpusets. In such cases, B<-1> is the "
+"lowest value, overridden by any other value, and B<0> is the next lowest "
+"value."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "FORMATS"
+msgstr ""
+
+#. ================== Mask Format ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The following formats are used to represent sets of CPUs and memory nodes."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Mask format"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<Mask Format> is used to represent CPU and memory-node bit masks in the "
+"I</proc/>pidI</status> file."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"This format displays each 32-bit word in hexadecimal (using ASCII characters "
+"\"0\" - \"9\" and \"a\" - \"f\"); words are filled with leading zeros, if "
+"required. For masks longer than one word, a comma separator is used between "
+"words. Words are displayed in big-endian order, which has the most "
+"significant bit first. The hex digits within a word are also in big-endian "
+"order."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The number of 32-bit words displayed is the minimum number needed to display "
+"all bits of the bit mask, based on the size of the bit mask."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Examples of the B<Mask Format>:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"00000001 # just bit 0 set\n"
+"40000000,00000000,00000000 # just bit 94 set\n"
+"00000001,00000000,00000000 # just bit 64 set\n"
+"000000ff,00000000 # bits 32-39 set\n"
+"00000000,000e3862 # 1,5,6,11-13,17-19 set\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "A mask with bits 0, 1, 2, 4, 8, 16, 32, and 64 set displays as:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "00000001,00000001,00010117\n"
+msgstr ""
+
+#. ================== List Format ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The first \"1\" is for bit 64, the second for bit 32, the third for bit 16, "
+"the fourth for bit 8, the fifth for bit 4, and the \"7\" is for bits 2, 1, "
+"and 0."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "List format"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<List Format> for I<cpus> and I<mems> is a comma-separated list of CPU "
+"or memory-node numbers and ranges of numbers, in ASCII decimal."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Examples of the B<List Format>:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"0-4,9 # bits 0, 1, 2, 3, 4, and 9 set\n"
+"0-2,7,12-14 # bits 0, 1, 2, 7, 12, 13, and 14 set\n"
+msgstr ""
+
+#. ================== RULES ==================
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "RULES"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The following rules apply to each cpuset:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Its CPUs and memory nodes must be a (possibly equal) subset of its parent's."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "It can be marked I<cpu_exclusive> only if its parent is."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "It can be marked I<mem_exclusive> only if its parent is."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "If it is I<cpu_exclusive>, its CPUs may not overlap any sibling."
+msgstr ""
+
+#. ================== PERMISSIONS ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If it is I<mem_exclusive>, its memory nodes may not overlap any sibling."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "PERMISSIONS"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The permissions of a cpuset are determined by the permissions of the "
+"directories and pseudo-files in the cpuset filesystem, normally mounted at "
+"I</dev/cpuset>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For instance, a process can put itself in some other cpuset (than its "
+"current one) if it can write the I<tasks> file for that cpuset. This "
+"requires execute permission on the encompassing directories and write "
+"permission on the I<tasks> file."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"An additional constraint is applied to requests to place some other process "
+"in a cpuset. One process may not attach another to a cpuset unless it would "
+"have permission to send that process a signal (see B<kill>(2))."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A process may create a child cpuset if it can access and write the parent "
+"cpuset directory. It can modify the CPUs or memory nodes in a cpuset if it "
+"can access that cpuset's directory (execute permissions on the each of the "
+"parent directories) and write the corresponding I<cpus> or I<mems> file."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"There is one minor difference between the manner in which these permissions "
+"are evaluated and the manner in which normal filesystem operation "
+"permissions are evaluated. The kernel interprets relative pathnames "
+"starting at a process's current working directory. Even if one is operating "
+"on a cpuset file, relative pathnames are interpreted relative to the "
+"process's current working directory, not relative to the process's current "
+"cpuset. The only ways that cpuset paths relative to a process's current "
+"cpuset can be used are if either the process's current working directory is "
+"its cpuset (it first did a B<cd> or B<chdir>(2) to its cpuset directory "
+"beneath I</dev/cpuset>, which is a bit unusual) or if some user code "
+"converts the relative cpuset path to a full filesystem path."
+msgstr ""
+
+#. ================== WARNINGS ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"In theory, this means that user code should specify cpusets using absolute "
+"pathnames, which requires knowing the mount point of the cpuset filesystem "
+"(usually, but not necessarily, I</dev/cpuset>). In practice, all user level "
+"code that this author is aware of simply assumes that if the cpuset "
+"filesystem is mounted, then it is mounted at I</dev/cpuset>. Furthermore, "
+"it is common practice for carefully written user code to verify the presence "
+"of the pseudo-file I</dev/cpuset/tasks> in order to verify that the cpuset "
+"pseudo-filesystem is currently mounted."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "WARNINGS"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Enabling memory_pressure"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"By default, the per-cpuset file I<cpuset.memory_pressure> always contains "
+"zero (0). Unless this feature is enabled by writing \"1\" to the pseudo-"
+"file I</dev/cpuset/cpuset.memory_pressure_enabled>, the kernel does not "
+"compute per-cpuset I<memory_pressure>."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Using the echo command"
+msgstr ""
+
+#. Gack! csh(1)'s echo does this
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When using the B<echo> command at the shell prompt to change the values of "
+"cpuset files, beware that the built-in B<echo> command in some shells does "
+"not display an error message if the B<write>(2) system call fails. For "
+"example, if the command:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "echo 19 E<gt> cpuset.mems\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"failed because memory node 19 was not allowed (perhaps the current system "
+"does not have a memory node 19), then the B<echo> command might not display "
+"any error. It is better to use the B</bin/echo> external command to change "
+"cpuset file settings, as this command will display B<write>(2) errors, as "
+"in the example:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"/bin/echo 19 E<gt> cpuset.mems\n"
+"/bin/echo: write error: Invalid argument\n"
+msgstr ""
+
+#. ================== EXCEPTIONS ==================
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXCEPTIONS"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Memory placement"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Not all allocations of system memory are constrained by cpusets, for the "
+"following reasons."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If hot-plug functionality is used to remove all the CPUs that are currently "
+"assigned to a cpuset, then the kernel will automatically update the "
+"I<cpus_allowed> of all processes attached to CPUs in that cpuset to allow "
+"all CPUs. When memory hot-plug functionality for removing memory nodes is "
+"available, a similar exception is expected to apply there as well. In "
+"general, the kernel prefers to violate cpuset placement, rather than "
+"starving a process that has had all its allowed CPUs or memory nodes taken "
+"offline. User code should reconfigure cpusets to refer only to online CPUs "
+"and memory nodes when using hot-plug to add or remove such resources."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A few kernel-critical, internal memory-allocation requests, marked "
+"GFP_ATOMIC, must be satisfied immediately. The kernel may drop some request "
+"or malfunction if one of these allocations fail. If such a request cannot "
+"be satisfied within the current process's cpuset, then we relax the cpuset, "
+"and look for memory anywhere we can find it. It's better to violate the "
+"cpuset than stress the kernel."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Allocations of memory requested by kernel drivers while processing an "
+"interrupt lack any relevant process context, and are not confined by cpusets."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Renaming cpusets"
+msgstr ""
+
+#. ================== ERRORS ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"You can use the B<rename>(2) system call to rename cpusets. Only simple "
+"renaming is supported; that is, changing the name of a cpuset directory is "
+"permitted, but moving a directory into a different directory is not "
+"permitted."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ERRORS"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The Linux kernel implementation of cpusets sets I<errno> to specify the "
+"reason for a failed system call affecting cpusets."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The possible I<errno> settings and their meaning when set on a failed cpuset "
+"call are as listed below."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<E2BIG>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted a B<write>(2) on a special cpuset file with a length larger than "
+"some kernel-determined upper limit on the length of such writes."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EACCES>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) the process ID (PID) of a process to a cpuset "
+"I<tasks> file when one lacks permission to move that process."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to add, using B<write>(2), a CPU or memory node to a cpuset, when "
+"that CPU or memory node was not already in its parent."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to set, using B<write>(2), I<cpuset.cpu_exclusive> or I<cpuset."
+"mem_exclusive> on a cpuset whose parent lacks the same setting."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to B<write>(2) a I<cpuset.memory_pressure> file."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to create a file in a cpuset directory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EBUSY>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to remove, using B<rmdir>(2), a cpuset with attached processes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to remove, using B<rmdir>(2), a cpuset with child cpusets."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to remove a CPU or memory node from a cpuset that is also in a "
+"child of that cpuset."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EEXIST>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to create, using B<mkdir>(2), a cpuset that already exists."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to B<rename>(2) a cpuset to a name that already exists."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EFAULT>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<read>(2) or B<write>(2) a cpuset file using a buffer that "
+"is outside the writing processes accessible address space."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EINVAL>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to change a cpuset, using B<write>(2), in a way that would violate "
+"a I<cpu_exclusive> or I<mem_exclusive> attribute of that cpuset or any of "
+"its siblings."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) an empty I<cpuset.cpus> or I<cpuset.mems> list to "
+"a cpuset which has attached processes or child cpusets."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) a I<cpuset.cpus> or I<cpuset.mems> list which "
+"included a range with the second number smaller than the first number."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) a I<cpuset.cpus> or I<cpuset.mems> list which "
+"included an invalid character in the string."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) a list to a I<cpuset.cpus> file that did not "
+"include any online CPUs."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) a list to a I<cpuset.mems> file that did not "
+"include any online memory nodes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) a list to a I<cpuset.mems> file that included a "
+"node that held no memory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EIO>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) a string to a cpuset I<tasks> file that does not "
+"begin with an ASCII decimal integer."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to B<rename>(2) a cpuset into a different directory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENAMETOOLONG>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<read>(2) a I</proc/>pidI</cpuset> file for a cpuset path "
+"that is longer than the kernel page size."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to create, using B<mkdir>(2), a cpuset whose base directory name "
+"is longer than 255 characters."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to create, using B<mkdir>(2), a cpuset whose full pathname, "
+"including the mount point (typically \"/dev/cpuset/\") prefix, is longer "
+"than 4095 characters."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENODEV>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The cpuset was removed by another process at the same time as a B<write>(2) "
+"was attempted on one of the pseudo-files in the cpuset directory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOENT>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to create, using B<mkdir>(2), a cpuset in a parent cpuset that "
+"doesn't exist."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<access>(2) or B<open>(2) a nonexistent file in a cpuset "
+"directory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOMEM>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Insufficient memory is available within the kernel; can occur on a variety "
+"of system calls affecting cpusets, but only if the system is extremely short "
+"of memory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOSPC>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) the process ID (PID) of a process to a cpuset "
+"I<tasks> file when the cpuset had an empty I<cpuset.cpus> or empty I<cpuset."
+"mems> setting."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) an empty I<cpuset.cpus> or I<cpuset.mems> setting "
+"to a cpuset that has tasks attached."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOTDIR>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to B<rename>(2) a nonexistent cpuset."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EPERM>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attempted to remove a file from a cpuset directory."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ERANGE>"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Specified a I<cpuset.cpus> or I<cpuset.mems> list to the kernel which "
+"included a number too large for the kernel to set in its bit masks."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ESRCH>"
+msgstr ""
+
+#. ================== VERSIONS ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Attempted to B<write>(2) the process ID (PID) of a nonexistent process to a "
+"cpuset I<tasks> file."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "VERSIONS"
+msgstr ""
+
+#. ================== NOTES ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Cpusets appeared in Linux 2.6.12."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NOTES"
+msgstr ""
+
+#. ================== BUGS ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Despite its name, the I<pid> parameter is actually a thread ID, and each "
+"thread in a threaded group can be attached to a different cpuset. The value "
+"returned from a call to B<gettid>(2) can be passed in the argument I<pid>."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "BUGS"
+msgstr ""
+
+#. ================== EXAMPLES ==================
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"I<cpuset.memory_pressure> cpuset files can be opened for writing, creation, "
+"or truncation, but then the B<write>(2) fails with I<errno> set to "
+"B<EACCES>, and the creation and truncation options on B<open>(2) have no "
+"effect."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXAMPLES"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The following examples demonstrate querying and setting cpuset options using "
+"shell commands."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Creating and attaching to a cpuset."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"To create a new cpuset and attach the current command shell to it, the steps "
+"are:"
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "(1)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "mkdir /dev/cpuset (if not already done)"
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "(2)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "mount -t cpuset none /dev/cpuset (if not already done)"
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "(3)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Create the new cpuset using B<mkdir>(1)."
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "(4)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Assign CPUs and memory nodes to the new cpuset."
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "(5)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Attach the shell to the new cpuset."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For example, the following sequence of commands will set up a cpuset named "
+"\"Charlie\", containing just CPUs 2 and 3, and memory node 1, and then "
+"attach the current shell to that cpuset."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"$B< mkdir /dev/cpuset>\n"
+"$B< mount -t cpuset cpuset /dev/cpuset>\n"
+"$B< cd /dev/cpuset>\n"
+"$B< mkdir Charlie>\n"
+"$B< cd Charlie>\n"
+"$B< /bin/echo 2-3 E<gt> cpuset.cpus>\n"
+"$B< /bin/echo 1 E<gt> cpuset.mems>\n"
+"$B< /bin/echo $$ E<gt> tasks>\n"
+"# The current shell is now running in cpuset Charlie\n"
+"# The next line should display \\[aq]/Charlie\\[aq]\n"
+"$B< cat /proc/self/cpuset>\n"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Migrating a job to different memory nodes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"To migrate a job (the set of processes attached to a cpuset) to different "
+"CPUs and memory nodes in the system, including moving the memory pages "
+"currently allocated to that job, perform the following steps."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Let's say we want to move the job in cpuset I<alpha> (CPUs 4\\[en]7 and "
+"memory nodes 2\\[en]3) to a new cpuset I<beta> (CPUs 16\\[en]19 and memory "
+"nodes 8\\[en]9)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "First create the new cpuset I<beta>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Then allow CPUs 16\\[en]19 and memory nodes 8\\[en]9 in I<beta>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Then enable I<memory_migration> in I<beta>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Then move each process from I<alpha> to I<beta>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The following sequence of commands accomplishes this."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"$B< cd /dev/cpuset>\n"
+"$B< mkdir beta>\n"
+"$B< cd beta>\n"
+"$B< /bin/echo 16-19 E<gt> cpuset.cpus>\n"
+"$B< /bin/echo 8-9 E<gt> cpuset.mems>\n"
+"$B< /bin/echo 1 E<gt> cpuset.memory_migrate>\n"
+"$B< while read i; do /bin/echo $i; done E<lt> ../alpha/tasks E<gt> tasks>\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The above should move any processes in I<alpha> to I<beta>, and any memory "
+"held by these processes on memory nodes 2\\[en]3 to memory nodes 8\\[en]9, "
+"respectively."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Notice that the last step of the above sequence did not do:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "$B< cp ../alpha/tasks tasks>\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<while> loop, rather than the seemingly easier use of the B<cp>(1) "
+"command, was necessary because only one process PID at a time may be written "
+"to the I<tasks> file."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The same effect (writing one PID at a time) as the I<while> loop can be "
+"accomplished more efficiently, in fewer keystrokes and in syntax that works "
+"on any shell, but alas more obscurely, by using the B<-u> (unbuffered) "
+"option of B<sed>(1):"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "$B< sed -un p E<lt> ../alpha/tasks E<gt> tasks>\n"
+msgstr ""
+
+#. ================== SEE ALSO ==================
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SEE ALSO"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<taskset>(1), B<get_mempolicy>(2), B<getcpu>(2), B<mbind>(2), "
+"B<sched_getaffinity>(2), B<sched_setaffinity>(2), B<sched_setscheduler>(2), "
+"B<set_mempolicy>(2), B<CPU_SET>(3), B<proc>(5), B<cgroups>(7), B<numa>(7), "
+"B<sched>(7), B<migratepages>(8), B<numactl>(8)"
+msgstr ""
+
+#. commit 45ce80fb6b6f9594d1396d44dd7e7c02d596fef8
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"I<Documentation/admin-guide/cgroup-v1/cpusets.rst> in the Linux kernel "
+"source tree (or I<Documentation/cgroup-v1/cpusets.txt> before Linux 4.18, "
+"and I<Documentation/cpusets.txt> before Linux 2.6.29)"
+msgstr ""
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr ""
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr ""
+
+#. ================== proc status ==================
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"In addition to the above pseudo-files in each directory below I</dev/"
+"cpuset>, each process has a pseudo-file, I</proc/E<lt>pidE<gt>/cpuset>, that "
+"displays the path of the process's cpuset directory relative to the root of "
+"the cpuset filesystem."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"Also the I</proc/E<lt>pidE<gt>/status> file for each process has four added "
+"lines, displaying the process's I<Cpus_allowed> (on which CPUs it may be "
+"scheduled) and I<Mems_allowed> (on which memory nodes it may obtain memory), "
+"in the two formats B<Mask Format> and B<List Format> (see below) as shown "
+"in the following example:"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+msgid ""
+"In the case of multiple overlapping cpusets which have conflicting "
+"I<sched_relax_domain_level> values, then the highest such value applies to "
+"all CPUs in any of the overlapping cpusets. In such cases, the value "
+"B<minus one (-1)> is the lowest value, overridden by any other value, and "
+"the value B<zero (0)> is the next lowest value."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"The B<Mask Format> is used to represent CPU and memory-node bit masks in the "
+"I</proc/E<lt>pidE<gt>/status> file."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"Attempted to B<read>(2) a I</proc/E<lt>pidE<gt>/cpuset> file for a cpuset "
+"path that is longer than the kernel page size."
+msgstr ""
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-07-18"
+msgstr ""
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr ""
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "2023-04-03"
+msgstr ""
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "Linux man-pages 6.04"
+msgstr ""