Afinitatea procesului (cunoscută și sub denumirea de fixare a CPU) este procesul de atribuire a programelor care rulează unui singur fir (nucleu virtual), mai degrabă decât să îi permită să ruleze cu toate firele CPU. Setarea afinității procesului este avantajoasă, deoarece va permite utilizatorilor să decidă exact câte resurse folosește un program.
În acest ghid, vom analiza cum să setați afinitatea programelor care rulează pe computerul dvs. Linux. De asemenea, vom analiza și alte modalități prin care puteți limita resursele de sistem la programele de pe sistemul de operare Linux.
Găsirea informațiilor despre CPU
Înainte de a putea trece peste modul de fixare a programelor individuale la anumite fire, trebuie să aflăm câte fire aveți disponibile pe sistemul dumneavoastră Linux. Există câteva modalități de a afla aceste informații . Vom acoperi două moduri.
Prima modalitate de a afla numărul de fire CPU este cu comanda nproc . Această comandă oferă un număr brut de procesoare care sunt disponibile pentru utilizarea sistemului dumneavoastră Linux.
Pentru a rula comanda nproc pentru a determina câte fire de execuție aveți disponibile, trebuie să deschideți o fereastră de terminal. Pentru a deschide o fereastră de terminal, apăsați Ctrl + Alt + T sau Ctrl + Shift + T de pe tastatură.
Cu fereastra terminalului deschisă, executați nproc .

nproc
Veți observa după ce rulați comanda; un număr apare în solicitare. Numărul este numărul de fire (nuclee virtuale) al sistemului dumneavoastră Linux. Pentru a salva aceste informații pentru mai târziu, procedați în felul următor.
nproc >> ~/cpu-count.txt
Dacă comanda nproc pur și simplu nu este suficientă informație pentru dvs., există un instrument de linie de comandă mai bun care oferă mult mai multe informații despre firele CPU. Se numește CPU Info. Iată cum se instalează.
În primul rând, asigurați-vă că aveți o fereastră de terminal deschisă. Apoi, introduceți comenzile de instalare de mai jos care corespund sistemului de operare Linux pe care îl utilizați.
Ubuntu
Pe Ubuntu Linux, veți putea instala CPU Info folosind comanda de manager de pachete Apt de mai jos.
sudo apt install cpuinfo
Debian
Cei de pe Debian Linux pot obține informații despre CPU și să ruleze cu următoarea comandă Apt-get .
sudo apt-get install cpuinfo
Arch Linux
Arch Linux poate instala cu ușurință instrumentul CPU Info pe Linux folosind următoarea comandă Pacman într-o fereastră de terminal.
sudo pacman -S python-py-cpuinfo
Fedora
Folosești Fedora Linux? Pune mâna pe CPU Info executând următoarea comandă Dnf într-un terminal.
sudo dnf install python3-cpuinfo
OpenSUSE
Un utilizator OpenSUSE Linux? Obțineți informații despre CPU și rulează cu comanda Zypper de mai jos.
sudo zypper instalează python3-py-cpuinfo
Odată ce programul CPU Info este configurat pe computerul dvs. Linux, este timpul să îl folosiți pentru a afla informații despre CPU, astfel încât să putem determina exact cu câte fire de execuție trebuie să lucrați.
Folosind comanda cpu-info de mai jos, obțineți o citire a procesorului dvs.
Notă: poate fi necesar să rulați cpuinfo în loc de cpu-info dacă pe Arch Linux, Fedora sau OpenSUSE Linux.

CPU-info
După rularea comenzii, veți vedea atât un număr de core, cât și un număr logic. Numărul logic este numărul de fire cu care trebuie să lucrați. Informațiile logice sunt cele mai importante atunci când vine vorba de acest ghid. Simțiți-vă liber să salvați informațiile CPU într-un fișier text, rulând următoarea comandă.
cpu-info >> ~/cpu-count.txt
Cum să setați afinitatea procesului pe Linux
Pentru a seta afinitatea procesului pe computerul dvs. Linux, va trebui să utilizați programul încorporat Taskset. Deschideți o fereastră de terminal apăsând Ctrl + Alt + T sau Ctrl + Shift + T de pe tastatură. Apoi, de acolo, urmați instrucțiunile pas cu pas de mai jos pentru a afla cum să afinați un proces care rulează.
Pasul 1: Găsiți ID-ul de proces al unui program care rulează executând pidof, urmat de numele aplicației. De exemplu, pentru a găsi ID-ul procesului Thunderbird, ați rula exemplul de comandă de mai jos.

pidof thunderbird
Pasul 2: Luați notă de ID-ul de proces al aplicației. Apoi, conectați-l la următorul exemplu de comandă pentru set de activități .
Notă: trebuie să schimbați thread_number în firul CPU pe care doriți să puneți programul. De asemenea, trebuie să schimbați process_id cu ID-ul procesului găsit cu pidof pe care doriți să îl asociați cu setul de activități .
sudo taskset -cp thread_number process_id &
Trebuie să verificați programul dvs. nou afinat? Rulați taskset -p cu ID-ul de proces al programului pentru a confirma că rulează pe firul CPU pe care l-ați specificat la pasul 2.
taskset -p process_id
Aflați mai multe despre Taskset
Pentru a afla mai multe despre Taskset, va trebui să citiți manualul. Executați comanda man taskset .

set de sarcini de om
Rularea comenzii man taskset vă va prezenta un manual detaliat despre aplicația Taskset. Priviți-l, deoarece vă va ajuta să înțelegeți cum funcționează aplicația. Când ați terminat, apăsați pe q pentru a ieși.