Scroll to navigation

UCLAMPSET(1) Polecenia użytkownika UCLAMPSET(1)

NAZWA

uclampset - modyfikuje atrybuty blokowania obciążenia systemu lub procesu

SKŁADNIA

uclampset [opcje] [-m minimum] [-M maksimum] -p PID

uclampset [opcje] [-m minimum] [-M maksimum] polecenie [argument...]

OPIS

uclampset ustawia lub pobiera atrybuty blokowania obciążenia istniejącego PID lub uruchamia polecenie z podanymi atrybutami.

Blokowanie obciążenia jest nową funkcją dodaną w v5.3. Jest wskazówką skierowaną do dyspozytora o dozwolonym przedziale obciążenia, w jakim powinno działać zadanie.

Obciążenie zadania wpływa na wybór częstotliwości i rozmieszczenie zadania. W momencie tworzenia niniejszego podręcznika jedynie zarządca cpufreq schedutil rozumiał wskazówki blokowania obciążenia. Proszę sprawdzić dokumentację swojego jądra, aby dowiedzieć się więcej o obsłudze przez innych zarządców cpufreq.

Jeśli działa się na asynchronicznym i niejednolitym systemie takim jak big.LITTLE od Arm, blokowanie obciążenia może poprawić rozmieszczanie zadań. Jeśli zadanie zostanie wypromowane tak, że wartość util_min będzie wyższa od możliwości pomniejszych rdzeni, dyspozytor postara się umieścić je na większym rdzeniu.

Podobnie, jeśli util_max będzie mniejsza lub równa możliwości pomniejszych rdzeni, to dyspozytor może je wciąż tam umieścić nawet, gdy faktyczne obciążenie zadania jest maksymalne.

Ustawienie uclamp_min zadania na wartość niezerową, efektywnie wypromuje zadanie tak, że gdy będzie uruchomione, zawsze rozpocznie od tej wartości obciążenia.

Ustawiając uclamp_max zadania poniżej 1024, efektywnie nałoży się ograniczenie na nie tak, że gdy będzie uruchomione, nie będzie w stanie przekroczyć tej wartości obciążenia.

Pełny przedział obciążenia wynosi: [0:1024]. Wartość specjalna -1 służy do resetowania do systemowej wartości domyślnej.

Więcej szczegółów w najnowszej dokumentacji jądra:

OPCJE

-m

Ustawia wartość util_min.

-M

Ustawia wartość util_max.

-a, --all-tasks

Ustawia lub pobiera atrybuty blokowania obciążenia wszystkich zadań (wątków) podanego PID-u.

-p, --pid

Działa na istniejącym PID i nie uruchamia nowego zadania.

-s, --system

Ustawia lub pobiera systemowe atrybuty blokowania obciążenia.

-R, --reset-on-fork

Ustawia znacznik SCHED_FLAG_RESET_ON_FORK.

-v, --verbose

Pokazuje informacje o stanie.

-h, --help

Wyświetla ten tekst i wychodzi.

-V, --version

Wyświetla wersję i wychodzi.

STOSOWANIE

Domyślnym zachowaniem jest uruchomienie nowego polecenia:

uclampset [-m uclamp_min] [-M uclamp_max] polecenie [argumenty]

Można też pobrać atrybuty blokowania obciążenia istniejącego zadania:

uclampset -p PID

Albo je ustawić:

uclampset -p PID [-m uclamp_min] [-M uclamp_max]

Albo kontrolować atrybuty w całym systemie:

uclampset -s [-m uclamp_min] [-M uclamp_max]

UPRAWNIENIA

Użytkownik musi posiadać przywilej CAP_SYS_NICE aby zmieniać atrybuty szeregowania procesu. Każdy użytkownik może pobrać informacje dotyczące szeregowania.

UWAGI

Systemowe atrybuty blokowania obciążenia służą do kontroli dozwolonego przedziału, jakiego mogą używać zadania. Domyślnie uclamp_min i uclamp_max są ustawione na 1024. Oznacza to, że użytkownicy mogą ustawić wartości blokowania obciążenia swoich zadań w pełnym zakresie [0:1024].

Na przykład:

uclampset -s -m 512 -M 700

uniemożliwi wypromowanie jakiegokolwiek zadania na wartość wyższą niż 512. Ponadto wszystkie zadania w systemie są ograniczane do obciążenia równego 700. Efektywnie ogranicza to maksymalną wydajność systemu do 700.

Proszę sprawdzić dokumentację swojego jądra, aby poznać dokładne oczekiwane zachowanie na tym jądrze.

AUTORZY

Qais Yousef <qyousef@layalina.io>

ZOBACZ TAKŻE

nice(1), renice(1), taskset(1), sched(7)

Schemat szeregowania zadań w Linuksie opisano w podręczniku sched_setscheduler(2) i sched_setattr(2)

ZGŁASZANIE BŁĘDÓW

Problemy należy zgłaszać w systemie śledzenia błędów <https://github.com/util-linux/util-linux/issues>.

DOSTĘPNOŚĆ

Polecenie uclampset jest częścią pakietu util-linux, który można pobrać ze strony Archiwum jądra Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.

2026-09-25 util-linux 2.42.4