Od razu zaznaczam że robisz wszystko na swoją odpowiedzialność. Za jakiekolwiek złe działanie telefonu lub uszkodzenia ja nie odpowiadam.
Orginalny temat na XDA
[REF][JUST UNLOCKED BL? HERE! ] Governors, I/O Schedulers, Optimization Tips [14-NOV] - xda-developers
Jeśli znajdziecie jakiś błąd w tłumaczeni lub jakąś niezgodność to proszę mnie poprawić 🙂
Wielkie podziękowania i piwo dla Forum po zmianach, link nie działa za I/O Schedulers
Temat zaczerpnięty z XDA, lecz podjąłem się przetłumaczenia tego z myślą, że komuś może się to przydać. Sam byłem bardzo ciekaw dotyczących „zarządców procesora” i ich właściwości pod względem wydajności, szybkość itp., Lecz u nas na forum tego nie odnalazłem.
Każdy, kto zdecydował się na złamanie bootloadera dobrze wie, że daje mu to możliwość podkręcenia procesor. Razem z podkręceniem możemy zmienić zarządcę procesora, który jak dobrze rozumie całe jego pojęcie jest odpowiedzialny za np. szybkość skalowania CPU do zaspokojenia zapotrzebowania danego procesu, a następnie stopniowo ograniczyć częstotliwości CPU w dół, gdy nie jest potrzebna. Każdy zarządca działa w trochę inny sposób jeden kładzie większy nacisk na szybkość działania telefonu kosztem baterii a jeszcze inny znowu na większa wydajność baterii.
Jeśli chodzi dokładnie o zarządców to mamy spory wybór, ale jest jedno małe, ale” nie na każdym kernelu znajdziemy tych samych zarządców np. na kernelu z FXP pod CM10 znajdziemy tylko 6 zarządców a na innym kernelu będzie ich 10. Poniżej jest lista zarządców najczęściej spotykanych poza kilkoma wyjątkami
😉
Lista Zarządców :
-Smoothass
-Smartass
-SmartassV2
-SavagedZen
-Interactive
-Lagfree
-MinMax
-OnDemand
-Conservative
-Brazilianwax
-Userspacce
-Powersave
-Performance
-Scary
-Lulzactive *
-Intellidemand *
-Badass*
-Lionheart *
-Lionheartx *
- Virtuous*
* małe wyjątki 😉
Przejdźmy do sedna, czyli do opisu poszczególnych zarządców i ich właściwości
OnDemand:
Dostępny prawie we wszystkich kernelach przeważnie ustawiony, jako domyślnym w większości jąder. Gdy obciążenie procesora osiągnie pewien punkt, OnDemand szybko skaluje CPU do zaspokojenia zapotrzebowania, a następnie stopniowo ograniczyć procesora w dół, gdy nie jest potrzebny.
Conservative:
Zarządca podobny do OnDemand, ale procesor jest bardziej skalowany stopniowo na dopasowanie lepszego zapotrzebowania na pobór energii.
Zarządca Conservative jest przeciwieństwem Interactive: Będzie powoli zwiększać częstotliwość CPU do wykonania danego procesu, a następnie szybki spadek do minimalnej częstotliwości CPU, gdy już nie jest potrzebny.
Interactive:
Dostępne w najnowszych jądrach, jest zarządca ustawionym domyślnie w niektórych kernelach (np. FXPCm10) Zarządca Interactive jest podobny do OnDemand z jeszcze większym naciskiem na szybkość reakcji.
Interactive jest przeciwieństwem zarządcy Conservative; szybko osiągnąć maksymalną dozwolonego częstotliwości procesora, a następnie powoli ograniczać częstotliwość procesora w dół, gdy nie jest już w użyciu.
Performance (Wydajność):
Zarządca Performance przy dużym zapotrzebowaniu na procesor blokuje CPU na maksymalnej domyślnej częstotliwości procesora, co pozwala telefonowi osiągnąć maksymalną wydajność telefonu np. przy użytkowaniu wymagających gier. Gdy telefon już nie ma dużego zapotrzebowania na CPU zarządca przechodzi w tryb niskiego poboru mocy.
OSTROŻNIE: Po przez nie właściwe ustawieni procesora można łatwo uszkodzić telefon
Powersave:
Przeciwieństwem zarządcy Performance. Zarządca Powersave blokuje częstotliwość CPU na minimalnym planie częstotliwości ustawianym przez użytkownika.
Przy ustawieniu tego zarządcy zapomnisz, co to jest codzienne ładowanie telefonu aczkolwiek sam system może chodzić dużo gorzej.
Scary
Nowy gubernator napisany na podstawie zachowawczym z niektórych funkcji zarządców Smartass, skaluje się odpowiednio do sposobu użycia CPU. Spędza większość czasu przy niższych częstotliwościach. Celem jest to, aby uzyskać najlepszy czas pracy baterii z przyzwoitą wydajność.
Według autora z XDA ten zarządca daje takie same wyniki jak zarządca Conservative nie ma żadnych różnić w ich działaniu.
Userspace:
Niezalecany do stosowanie wiec nie będę go opisywał
Org test z XDA
(Userspace is not a governor pre-set, but instead allows for non-kernel daemons or apps with root permissions to control the frequency. Commonly seen as a redundant and not useful since SetCPU and NoFrills exist. Highly not recommended for use.)
Smartass:
Jest on oparty na koncepcji zarządcy Interactive. Smartass jest kompletne przepisanie kodem z Interactive. Wydajność jest na równa z zarządca MinMax może jest nieco bardziej elastyczna. Żywotność baterii jest trudna do oszacowania, ale CPU nie spędza dużo więcej czasu na niższych częstotliwościach.
SmartassV2
Teoretycznie połączenie z najlepszych właściwości Interactive i OnDemand, automatycznie zmniejsza maksymalną częstotliwość procesora, gdy telefon jest w stanie spoczynku, a maksymalną wydajnością poprzez skupienie się na "idealnej" częstotliwości w trakcie działania telefonu.
Smoothass
Bardziej agresywna wersja Sargass. Bardzo szybkie osiągnięcie maksymalnej częstotliwości CPU, gdy jest to potrzebne i utrzymanie stałej częstotliwości procesora (można to nazwać bieg jałowy). Szybki powrót niskiego poboru po zakończeniu procesu
Według autora z XDA zarządca Smoothass wykorzystuje CPU tak dobre, że ustawiając taktowanie procesora na 1.2 GHz wydajność i osiągi telefonu są tak samo dobre jak przy częstotliwości 1.4GHz. Może powodować zmniejszenie żywotności baterii.
Brazilianwax
Zarządca podobny do SmartassV2. Bardziej agresywne skalowanie, więc większą wydajność, ale większe zużycie baterii.
SavagedZen
Kolejny zarządca oparty na SmartassV2. Osiąga dobrą równowagę między wydajnością i baterią w porównaniu do Brazilianwax. Bardzie zoptymalizowana wersja SmartassV2 ale wielkiej różnicy działaniu nie ma.
Lagfree
Kolejny zarządca podobny w działaniu do Smartass, lecz bardziej w oparciu o zarządcę Conservative niż Interactive natychmiast osiąga daną mu częstotliwość po wybudzeniu urządzenia, lecz bardzo powolny spadek częstotliwości CPU po uśpieniu urządzenia.
MinMax
Bez skalowania częstotliwości pośrednich.
Interactivex
Zarządca InteractiveX jest w dużej mierze oparty o Interactive wzbogacony o strojenie parametrów czasowych, aby zoptymalizować równowagę między Baterią a Wydajnością. Częstotliwość CPU jest ustalana tylko przy włączonym ekranie. Zarządca bardziej przyjazny baterii.
Brak opisów:
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
Każdy kernel może mieć różnych zarządców wiec nie piszcie do mnie na PW gdzie mogę znaleźć tego zarządcę albo innego, bo tego nie wiem. Każdy z nas może mieć innego kernela np. ja mam FXP kolega PSTRYK może mieć kernel MASA a np. M.I.N.I ma KernelPANIC w każdym z tych trzech kerneli mogą, ( ale wcale nie jest powiedziane że muszą być) różni zarządcy.
Mam nadzieje, że komuś przyda się ten temat i jest na tyle zrozumiale napisany, że każdy pojmie, o co w tym chodzi, bo straciłem na tłumaczeniu trochę czasu i nie chciałbym żeby to poszło na marne :E
Ja aktualne jestem na kernelu z FXP pod cm10 dużego wyboru w zarządcach tu nie ma bo jest ich tylko 6
- conservative
- onDemand
- userspace
- powersave
- interactive
- performance
I/O Schedulers: planowanie wejść/wyjść
Noop: jest to prosty I/O Scheduler, a im bardziej prosty I/O Scheduler tym lepiej.
CFQ: najbardziej zbalansowany I/O Scheduler.
Deadline: bazuje na CFQ, jest jego szybszą odmianą.
VR: najszybszy I/O Scheduler i pozwala osiągnąć najwyższe wyniki w benchmarkach jednak jest również najbardziej niestabilnym.
BFQ: bazuje na CFQ, jest jego szybszą odmianą.
SIO: jest to prosty I/O Scheduler, a ja wspominałem im bardziej prosty I/O Scheduler tym lepiej. Zapewnia odpowiedni balans i jest najczęściej polecany.
( SIO jest schedulerem uniwersalnym, oferującym przyzwoitą wydajność, stabilność i czas pracy na baterii. Scheduler zarządza pracą procesora w związku z czym wpływa na wiele czynników, głównie na wydajność, reakcje systemu i właśnie baterie. Jedne charakteryzują się większą wydajnością ( NOOP ) inne są idealne do benchmarków ( VR ) Choć na pierwszy rzut oka różnice pomiędzy nimi ciężko zauważyć, istnieją i po pewnym okresie testowania się uwidoczniają. )