Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
documentation.suse.com / SUSE Linux Enterprise Real Time Documentation / Shielding Linux Resources / Introduction
Applies to SUSE Linux Enterprise Real Time 15 SP6

1 Introduction

Note
Note: cset and cgroup version

The cset utility supports cpuset controller only on v1 hierarchy (legacy or hybrid in systemd lingo). On a system with the unified (v2) hierarchy, cset is not supported and cpuset controller can be used via systemd.

In the Linux kernel, the cpuset facility provides a mechanism for creating logical entities called cpusets that encompass definitions of CPUs and NUMA Memory Nodes (if NUMA is available). Cpusets constrain the CPU and Memory placement of a task to only the resources defined within that cpuset. These cpusets can then be arranged into a nested hierarchy visible in the cpuset virtual file system. Sets of tasks can be assigned to these cpusets to constrain the resources that they use. The tasks can be moved from one cpuset to another to use other resources defined in those other cpusets.

The cset command is a Python application that provides a command line front-end for the Linux cpusets functionality. Working with cpusets directly can be confusing and slightly complex. The cset tool hides that complexity behind an easy-to-use command line interface.

There are two distinct use cases for cset: the basic shielding use case and the advanced case of using raw set and proc subcommands. The basic shielding function is accessed with the shield subcommand and described in the next section. Using the raw set and proc subcommands allows one to set up arbitrarily complex cpusets and is described in Chapter 4, Full-featured cpuset manipulation commands.

Note that in general, one either uses the shield subcommand or a combination of the set and proc subcommands. One rarely, if ever, uses all of these subcommands together. Doing so will likely become too confusing. Additionally, the shield subcommand sets up its required cpusets with exclusively marked CPUs. This can interfere with your cpuset strategy. If you find that you need more functionality for your strategy than shield provides, go ahead and transition to using set and proc exclusively. It is straightforward to implement what shield does with a few extra set and proc subcommands.

Obtaining online help
For a full list of cset subcommands
tux > cset help
For in-depth help on individual subcommands
tux > cset help <subcommand>
For options on individual subcommands
tux > cset <subcommand> (-h | --help)