likwid-pin - Online w chmurze

To jest komenda likwid-pin, którą można uruchomić u dostawcy darmowego hostingu OnWorks za pomocą jednej z naszych wielu darmowych stacji roboczych online takich jak Ubuntu Online, Fedora Online, emulator online Windows czy emulator online MAC OS

PROGRAM:

IMIĘ


likwid-pin - przypina aplikację sekwencyjną lub gwintową do dedykowanych procesorów

STRESZCZENIE


likwidacja-pin [-vhqipS] [-c ] [-s ] [-d ]

OPIS


likwidacja-pin to aplikacja wiersza poleceń do przypinania aplikacji sekwencyjnych lub wielowątkowych
dedykowanym procesorom. Może być używany jako zamiennik dla zestaw zadań(1). Przeciwny do
taskset nie ma maski koligacji, ale określono pojedyncze procesory. Dla wielowątkowości
aplikacje oparte na bibliotece pthread the pthread_create wywołanie biblioteki jest przeciążone
przez LD_PRELOAD, a każdy utworzony wątek jest przypinany do dedykowanego procesora zgodnie ze specyfikacją
in lista_rdzeń

Domyślnie każdy wygenerowany wątek jest przypięty do rdzenia w kolejności wywołań do
pthread_create. Możliwe jest pominięcie pojedynczych wątków za pomocą opcji wiersza poleceń -s.

W przypadku implementacji OpenMP kompilatory gcc i icc są wyraźnie obsługiwane. Inni również mogą
praca. likwidacja-pin ustawia zmienną środowiskową OMP_NUM_THREADS, jeśli jeszcze nie jest
obecny. Ustawi tyle wątków, ile jest obecnych w wyrażeniu pinu. Miej świadomość, że
z pthreads wątek nadrzędny jest zawsze przypięty. Jeśli utworzysz na przykład 4 wątki za pomocą
pthread_create i nie używaj procesu nadrzędnego jako pracownika, którego nadal musisz zapewnić
num_threads+1 identyfikatory procesorów.

likwidacja-pin obsługuje różne numeracje do przypinania. Domyślna numeracja fizyczna
używane są rdzenie. To też jest numeracja likwidacja-topologia(1) raporty. Ale również
można zastosować numerację logiczną wewnątrz węzła lub gniazd. Jeśli używasz z N (np. -c
N:0-6) rdzenie są ponumerowane logicznie w całym węźle. Rdzenie fizyczne są na pierwszym miejscu. Gdyby
system np. ma 8 rdzeni z 16 wątkami SMT, z -c N:0-7 otrzymujesz wszystkie rdzenie fizyczne.
Jeśli podasz -c N:0-15, otrzymasz wszystkie fizyczne rdzenie i wszystkie wątki SMT. Z S możesz
podać numerację logiczną wewnątrz gniazd, ponownie rdzenie fizyczne są na pierwszym miejscu. Możesz mieszać
różne domeny oddzielone @. Np. -c S0:0-3@S2:2-3 przypinasz wątek 0-3 do logicznego
rdzenie 0-3 w gnieździe 0 i wątki 4-5 w rdzeniach logicznych 2-3 w gnieździe 2.

Do zastosowań, w których nie można zastosować polityki pierwszego kontaktu w systemach NUMA likwidacja-pin
może służyć do włączania umieszczania w pamięci z przeplotem. Może to znacznie przyspieszyć
wydajność kodów wielowątkowych związanych z pamięcią. Wszystkie węzły numeryczne, do których użytkownik przypiął wątki
są używane do przeplatania.

OPCJE


-v wypisuje informacje o wersji na standardowe wyjście, a następnie kończy działanie.

-h wypisuje komunikat pomocy na standardowe wyjście, a następnie kończy działanie.

-c OR OR <rozpraszać polityka>
podać liczbową listę procesorów. Lista może zawierać wiele pozycji,
oddzielone przecinkiem i zakresami. Na przykład 0,3,9-11. Możesz także użyć logicznego
numeracja, zarówno w węźle (N), jak i w gnieździe (S ) lub domena numeryczna (M ).
likwid-pin obsługuje również logiczne przypinanie w ramach procesora z prefiksem L. Jeśli ty
pominąć tę opcję likwid-pin przypnie wątki do procesorów na węźle
najpierw z fizycznymi rdzeniami. Zobacz poniżej, aby uzyskać szczegółowe informacje na temat używania wyrażenia wątku lub
polityka rozproszenia

-s
Określ maskę pominięcia jako liczbę szesnastkową. Dla każdego ustawionego bitu odpowiedni wątek to
pominięto.

-S Wszystkie domeny pamięci ccNUMA należące do określonej listy wątków zostaną wyczyszczone
przed biegiem. Potrafi rozwiązać problemy z pamięcią podręczną bufora plików w systemie Linux.

-p drukuje dostępne domeny wątków do logicznego przypinania. W przypadku użycia w połączeniu
z -c, identyfikatory fizycznych procesorów są wypisywane na standardowe wyjście.

-i ustaw politykę pamięci numa tak, aby przeplatała wszystkie węzły numa zaangażowane w przypinanie

-q ciche wykonanie bez wyjścia

-d
ustaw ogranicznik używany do wyprowadzenia listy fizycznych procesorów (-p & -c)

PRZYKŁAD


1. Dla standardowej aplikacji pthread:

likwidacja-pin -c 0,2,4-6 ./mojaAplikacja

Proces nadrzędny jest przypięty do procesora 0. Wątek 0 do procesora 2, wątek 1 do
procesor 4, wątek 2 z procesorem 5 i wątek 3 z procesorem 6. Jeśli jest więcej wątków
utworzone niż określono na liście procesorów, te wątki są przypięte do procesora 0 jako
awaryjny.

2. W przypadku gcc OpenMP na liście procesorów należy podać tyle identyfikatorów, ile jest wątków:

OMP_NUM_THREADS=4; likwidacja-pin -c 0,2,1,3 ./mojaAplikacja

3. Pełną kontrolę nad przypinaniem można uzyskać, określając maskę pominięcia. Na przykład
następujące polecenie pomija przypinanie wątku 1:

OMP_NUM_THREADS=4; likwidacja-pin -s 0x1 -c 0,2,1,3 ./mojaAplikacja

4. Przełącznik -c obsługuje definicję wątków w określonej domenie koligacji, takiej jak
Węzeł NUMA lub grupa pamięci podręcznej. Dostępne domeny koligacji można pobrać za pomocą -p
przełącznik i brak dalszych opcji w wierszu poleceń. Wspólne domeny powinowactwa to N
(cały węzeł), SX (gniazdo X), CX (grupa pamięci podręcznej X) i MX (grupa pamięci X). Wiele
domeny koligacji można ustawić oddzielone znakiem @. Aby przypiąć 2 nitki na każdym gnieździe
systemu 2-gniazdowego:

OMP_NUM_THREADS=4; likwidacja-pin -c S0:0-1@S1:0-1 ./mojaAplikacja

5. Inna definicja argumentu przełącznika -c umożliwia przypinanie wątków zgodnie z
do wyrażenia takiego jak E:N:4:1:2. Składnia to E: :
wątki>(: : ). Przykładowe szpilki 8 gwintów z 2 gwintami SMT na
rdzeń na maszynie SMT 4:

OMP_NUM_THREADS=4; likwidacja-pin -c P:N:8:2:4 ./mojaAplikacja

6. Ostatnią alternatywą dla przełącznika -c jest automatyczne rozpraszanie wątków na
domeny powinowactwa. Na przykład, aby rozproszyć wątki we wszystkich domenach pamięci w a
system:

OMP_NUM_THREADS=4; likwidacja-pin -c M:rozproszenie ./mojaAplikacja

Skorzystaj z likwid-pin online za pomocą serwisu onworks.net



Najnowsze programy online dla systemów Linux i Windows