Każdy system Windows wydany po 2001 roku posiada bardzo przydatną, zwiększającą wydajność funkcję zarządzania procesorem. Dotyczy ona procesorów wielordzeniowych i pozwala na przydzielenie konkretnemu procesowi wybranego rdzenia (lub rdzeni). Przydaje się to między innymi przy uruchamianiu aplikacji pisanych przed wprowadzeniem na rynek wspomnianych procesorów wielordzeniowych, gdyż domyślnie każdy program lub gra uruchamiana jest na maksymalnej ilości dostępnych rdzeni - może się to zakończyć nieprawidłowym działaniem aplikacji lub gry, a w najgorszym wypadku może dojść do zatrzymania pracy systemu. Niniejszy artykuł poświęcony jest koligacji procesorów wielordzeniowych. Nazwa co najmniej enigmatyczna, ale postaramy się przedstawić tę funkcję w możliwie najprostszy sposób.
Zacznijmy od najpopularniejszego systemu operacyjnego na rynku - Windows 7.
Menedżer zadań Windows 7
Na powyższym zdjęciu widać, że pod względem prezentowanych wartości oba wykresy są do siebie zbliżone, a to dlatego, że domyślnie system przypisuje dla każdej uruchomionej aplikacji maksymalną możliwą ilość rdzeni procesora.
Chcąc uniknąć sytuacji, w której mniej doświadczeni użytkownicy mogliby poczuć się pokrzywdzeni, przypomnimy teraz sposoby wywoływaniaMenedżera zadań. Jedną z najczęściej stosowanych w tym celu metod jest kliknięcie prawym przyciskiem myszy (PPM) na pasku zadań. Drugim sposobem jest użycie skrótu klawiszowego: Ctrl + Shift + Esc. Gdy mamy już uruchomiony Menedżer zadań, czas na zmianę koligacji dla wybranej aplikacji/procesu.
Etapy zmiany koligacji w Windows 7
Po otwarciu Menedżera zadań przechodzimy do zakładki Aplikacje, po czym na wybranej aplikacji klikamy prawym przyciskiem myszy. Aby wyświetlić menu kontekstowe, zamiast myszy można też wykorzystać skrót klawiszowy Shift + F10. Z rozwiniętego menu należy wybrać opcję: Przejdź do procesu.
Warto zaznaczyć, że od razu można przejść do zakładki Procesy, ale powyższa operacja pozwoli nam na szybsze dotarcie do wybranego procesu, w oparciu o który działa aplikacja.
Na zaznaczonym procesie należy kliknąć PPM i z menu wybrać Ustaw koligację.
Na powyższym zdjęciu widać okno dialogowe, dzięki któremu można ustawić ile rdzeni procesora ma być aktywnych dla danego procesu.
Etapy zmiany koligacji w Windows 8
W Windows 8, tak samo jak w jego poprzedniku, Menedżer zadań można wywołać na dwa sposoby: poprzez kliknięcie prawym przyciskiem myszy na pasku zadań lub skrótem klawiszowym Ctrl + Shift + Esc.
W zakładce Procesy należy wybrać odpowiednią aplikację, a następnie klikając na niej prawym przyciskiem myszy, z menu kontekstowego wybrać Przejdź do szczegółów.
Podobnie jak w Windows 7, można od razu przejść do zakładki Szczegóły, a następnie tam wybrać daną aplikację. Jednak wspomniany już dwuetapowy proces pozwoli nam uniknąć pomyłek. Ostatnią czynnością przed zmianą koligacji dla wybranego procesu będzie kliknięcie PPM i wybranie z menu kontekstowego Ustaw koligację.
Skoro wiemy już jak posługiwać się menedżerem zadań w celu zmiany koligacji dla danej aplikacji/procesu, pora na definiowanie własnych skrótów, dzięki którym będzie można uruchomić aplikację na określonym rdzeniu procesora.
W naszym przykładzie skorzystamy z Defragmentatora dysków. Jeżeli chcemy żeby uruchomił się wyłącznie na rdzeniu 1 (CPU 0), wówczas polecenie musi wyglądać następująco:
C:\Windows\System32\cmd.exe /C start /affinity 1 dfrgui.exe
Koligacja dla procesu Skype została zmieniona na CPU 1.
Na powyższych zdjęciach widać wyraźnie, że wykresy użycia konkretnych rdzeni procesora różnią się od pozostałych, co świadczy o tym, że zmiana koligacji procesora powiodła się.
Jeżeli chcemy żeby aplikacja uruchomiła się wyłącznie na rdzeniu 2 to polecenie musi wyglądać następująco:
C:\Windows\System32\cmd.exe /C start /affinity 2 mspaint.exe
Liczba znajdująca się po start /affinity jest nazywana maską koligacji i definiuje liczbę w systemie szesnastkowym.
C:\Windows\System32\cmd.exe /C start /affinity 3 mspaint.exe
Powyższe polecenie uruchomi Paint na obu rdzeniach procesora, przy założeniu, że w komputerze znajduje się procesor dwurdzeniowy.
Zmiana koligacji w Windows XP
Zmiana koligacji procesora w Windows 7 lub Windows 8 ogranicza się do jednej prostej komendy lub jak kto woli do zabawy z Menedżerem zadań. W Windows XP domyślnie, bez używania dodatkowych narzędzi, koligację można zmienić wyłącznie przez Menedżer zadań.
Podobnie jak w przypadku Windows 7 po uruchomieniu Menedżera zadań przechodzimy do zakładki Procesy, gdzie na wybranym przez nas procesie, klikamy prawym przyciskiem myszy i z menu kontekstowego wybieramy Ustaw koligację. Wówczas pokaże się okienko dialogowe z listą możliwych rdzeni, przy czym rdzenie niedostępne będą tam nieaktywne. Jeśli chcemy uzyskać ten sam efekt co w Windows 7/8 stosując Wiersz poleceń, należy wcześniej pobrać pakiet Sysinternals Suite. Jest to darmowa paczka narzędzi przygotowana przez Mark’a Russinovich’a, dostepna do pobrania ze strony Sysinternals.
Sugeruję rozpakować pobrane archiwum do katalogu głównego, choć nie ma przeszkód by znalazł się on w innym miejscu. Kolejny krok to uruchomienie Wiersza poleceń, w którym to należy wpisać następujące polecenia:
- cd \ aby przejść do katalogu głównego dysku
- c:\SysinternalsSuite\PsExec.exe –a 1 cmd /c ”echo.|dfrg.msc”
Ostatnie polecenie spowoduje uruchomienie Defragmentatora dysków na rdzeniu CPU 1.
Zmiana koligacji w Windows Vista
Byłoby karygodnym błędem gdybym pisząc ten artykuł pominął Windows Vista. Tutaj, tak samo jak w poprzednich opisywanych edycjach Windows, koligację można zmienić za pomocą Menedżera zadań.
Opisywany wcześniej Windows XP jest jedynym systemem wydanym po roku 2001, w którym zmiana koligacji, prócz opcji w Menedżerze zadań, nie może zostać zmieniona bez używania dodatkowych narzędzi. W Windows Vista działa to samo polecenie co w Windows 7 i 8, czyli:
C:\Windows\System32\cmd.exe /C start /affinity 2 mspaint.exe