W związku z pytaniem, które jest lepsze, program planujący CFS lub BFS :
Gdzie znajdę listę dostępnych harmonogramów?
Jak przełączać się między nimi?
W związku z pytaniem, które jest lepsze, program planujący CFS lub BFS :
Gdzie znajdę listę dostępnych harmonogramów?
Jak przełączać się między nimi?
Będziesz musiał pobrać, załatać i skompilować własne jądro, ponieważ BFS nie jest obecnie częścią jądra głównego. Jądro linii głównej zawiera tylko jeden program planujący i nie ma na celu posiadania wielu programów planujących w tej samej bazie kodu, ani nawet przełączalnych programów planujących w locie (jest to nawet coś, co można by zrobić). Byłoby to po prostu zbyt skomplikowane i nie warte wysiłku.
Tak więc, aby uzyskać BFS w systemie:
Zaleta uruchamiania BFS nad CFS jest jednak bardzo niewielka, szczególnie w przypadku nowszych wersji jądra. Pamiętaj, że CFS jest ciągle ulepszany.
Po dokładnym zbadaniu tego wydaje się, że istnieją tylko dwa harmonogramy dla Linuksa: CFS i BFS .
Najprostszym sposobem zainstalowania BFS w Ubuntu 10.10 jest łatka PPA :
Możesz także zainstalować poprawkę za pomocą Centrum oprogramowania Ubuntu zgodnie z opisem w „Czym są PPA i jak z nich korzystać” .
Łatka instaluje nowe (załatane) jądro, które pojawi się w menu GRUB przy starcie z przyrostkiem „-ck”. Przełączaj się między harmonogramami poprzez ponowne uruchomienie i wybranie odpowiedniego jądra w menu startowym.
Na wydajność
W moim przypadku, gdy Folding @ Home działa w tle na komputerze stacjonarnym (osiem wątków F @ H na ośmiu rdzeniach w procesorze Intel i7 2600K), BFS jest znacznie lepszy: reakcja pulpitu jest szybsza (nie jest to duża różnica, ale zdecydowanie zauważalna) podczas gdy aplikacja F @ H w tle działa o 20-25% szybciej.
W tym scenariuszu, dotyczącym jednoczesnego korzystania z interaktywnego pulpitu i długotrwałych zadań obciążających procesor w tle, system CFS pozostawiał jeden rdzeń bezczynny przez długi czas. BFS wydaje się znacznie lepszy w używaniu wszystkich rdzeni w 100% do zadań w tle, a jednocześnie zapewnia szybką reakcję na zadania interaktywnego pulpitu.
Prawdopodobnie nie ma jednego harmonogramu, który działałby optymalnie przy każdej możliwej kombinacji obciążeń, ale są przypadki, w których BFS jest lepszy.
źródło
Jednak poniżej działało dla mnie na Precise Pangolin (Ubuntu 12.04) YMMV.
BFS jest częścią
pf-kernel
Najlepszym sposobem na zainstalowanie BFS w systemie Ubuntu dzisiaj (grudzień 2013 r.) Wydaje się być instalacja jądra pf , który jest w zasadzie standardowym jądrem z kilkoma poprawkami wydajności. Te łaty obejmują:
Instrukcje w sieci
Znalazłem instrukcje dotyczące instalowania
pf-kernel
pakietów dla Ubuntu w artykule „ Uzyskaj lepszą wydajność Linux Linux Desktop i więcej dzięki pf-kernel .” - Jednak te instrukcje są nieco nieaktualne, ponieważ wskazują na nieistniejące źródło odpowiedniego Debiana paczki Ale znalazłem wątek „ pf-kernel dla Ubuntu ” (napk-kernel
forach), który wspomina, że pakiety Debiana można pobrać z konta Dropbox użytkownika forum big_bum .Instalowanie
pf-kernel
Komputer, na którym zainstalowałem, to stary 32-bitowy laptop, więc zacząłem od pobrania wymaganych pakietów
linux-headers
ilinux-image
pakietów do katalogu na mojej maszynie o nazwie~/kernel
.(Przejdź do wyżej wymienionego konta Dropbox, aby znaleźć 64-bitowe i / lub nowsze wersje tych pakietów.)
Następnie postępowałem zgodnie z instrukcjami „ Uzyskaj lepszą wydajność pulpitu Linuksa i więcej dzięki pf-kernel ” i wykonałem następujące polecenia:
Wygląda na to, że wszystko działa płynnie, więc zrestartowałem się.
Sprawdzanie, czy to działa
Szybka kontrola wydaje się wskazywać, że działa, np. Polecenie
uname -a
informuje, że używampf-kernel
:I
cat /sys/block/sda/queue/scheduler
pokazuje, że BFQ jest obecnie bieżącym programem planującym dyski (dlasda
dysku):źródło
Popraw i zainstaluj nowe jądro z BFS. Musisz użyć jądra sepatare, nie ma możliwości użycia obu na tym samym obrazie jądra (szczególnie do przełączania ich w locie)
źródło