Bedre Linux desktop performance med pf-kerne

Dette forum bruges på EGET ANSVAR til at lege med scripts og andre ting med risiko for at beskadige sit eget og andres systemer.
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Bedre Linux desktop performance med pf-kerne

Indlæg af lath »

Bemærk at dette er et indlæg i sandkassen.
Et indlæg i sandkassen er noget anderledes end alle andre indlæg i forum:
Læs Forum regler for Sandkassen.
Især vil jeg påpege at hvis du ikke ved hvad du laver, så bør du ikke bruge oplysningerne.

For nogen tid siden skrev om en kraftig performance forbedring i kernen til desktop Linux, og nu er det så sket igen.
Desktop Linux kan få endnu et hastighedsboost ved at bruge en pf-kerne.

Pf-kernen har nogle ting som ikke er inkluderet i kernen endnu, så det kræver en del for at få gang i sådan en kerne: Det er oversættelse af kernen til maskinkode, installation i styresystemet, incl. at fifle med GRUB med alle de muligheder det giver for at styresystemet ligger hen af gulvbrædderne
Bemærk at alle dine dokumenter,musik,video, betalte e-bøger etc. også hurtigt kan komme i akut livsfare, hvis der går noget galt i kernen, hvor der overhovedet ingen begrænsninger er - kernen har faktisk flere rettigheder end superbrugeren, så det kan gå rigtig meget galt ved fejl i kernen. Rent faktisk kan kernen nægte superbrugeren retten til at gøre noget - f.eks. vil kernen blankt afvise at lade superbrugeren oprette/rette i/slette en fil/mappe på et read-only filsystem.

Nå det var så advarslerne, der er til for at du skal tænke på om brug af pf-kernen nu også er en god ide.

Webupd8 har en artikel om det: Get Better Linux Desktop Performance And More With pf-kernel

pf-kernel har support for de her ting:
  • En scheduler der hedder BFS der bringer gør får en desktop til at føles mere hurtigt-reagerende og kvik.
    En CPU scheduler er den del af kernen, der skifter imellem programmer. Den får får det til at se ud som om man kører mange programmer samtidigt, selv om der i virkeligheden kun er muligt at køre et program per CPU kerne af gangen på samme tid.
    Et skift fra program kode til kerne kode, eller skift fra et program til et andet program (via CPU scheduler kerne koden) kaldes for et context switch.
  • En BFQ I/O scheduler - der skrives at I/O til harddisk skulle være lige så hurtig som i dag når harddisken ikke har noget at lave, og det er uanset hvor kraftigt belastet den er med arbejde.
    En I/O schduler er ansvarlig for at udnytte I/O hardware resurser bedst muligt uden at et program bliver udsat for det der kaldes starvation (hungersnød). Et program lider under starvation, når I/O schedulerens kode har formået at håndtere data for en masse andre programmer, men ikke er er i stand til at levere data til det program der lider under starvation endda har været før de andre programmer med et I/O systemkald. Når et program lider under starvation forbliver programmet i sleep (sove) tilstand, og vågner ikke op før I/O scheduleren markerer (=programmet sættes på run-køen) overfor CPU scheduleren at programmet er klar til at køre på en af mikroprocessorens CPU kerner, da der nu er data klar til programmet.
  • TuxOnIce: der er en alternativ hvile/dvale mekanisme, der bruger komprimering, understøtter et et ubegrænset antal af swap partitioner og/eller filer, og kan fortryde dvale eller dekomprimering af et hvile/dvale image ved at trykke på esc knappen og meget mere
  • Noget der hedder: UKSM: Memory De-Duplication
    Dokumentation findes kun på kinesisk på http://kerneldedup.org/projects/uksm/introduction/ men translate.google.com (Kinesisk -> Engelsk) gør det ret godt.
    Det ser ud til at det er en mekanisme der sammensmelter 2 helt identiske pages så der kun anvendes 1 page i fysisk RAM i stedet for 2 pages. Den slags er nyttigt for virtuelle maskiner a la dem der er i Java JRE, Ruby, Perl, Python og så videre.
    1 page er 1 blok der består af 1 sammenhængende række eller sekvens af bytes, der er 4096 bytes lang.
    Med virtuel maskine menes der ikke dem som kan afvikle et helt styresystem på et host styresystem - det er den anden slags virtuelle maskiner der er tale om.
  • EnhanceIO: der er en SSD harddisk caching device driver.
    Den bruges til at lave SSD harddiske om til en cache enhed. Håndtere man meget store mængder af data kan det hele ikke være i RAM, og her er en SSD hardisk en lynhurtig cache der ikke er lige så langsom som en traditionel harddisk.

Der er en YouTube demo video af BFQ I/O scheduleren i brug:


/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
nymark1
Indlæg: 223
Tilmeldt: 24. okt 2008, 08:13
IRC nickname: nymark1
Geografisk sted: Aalborg

Re: Bedre Linux desktop performance med pf-kerne

Indlæg af nymark1 »

Okay, hvis man nu er "ude på skrammer", hvordan installerer man så en pf-kerne? :)
Og hvis det går helt galt, kan man så geninstallere Ubuntu fra en usb nøgle?
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: Bedre Linux desktop performance med pf-kerne

Indlæg af lath »

nymark1 skrev:Okay, hvis man nu er "ude på skrammer", hvordan installerer man så en pf-kerne? :)


Der er et afsnit under selve webupd8 artiklen der hedder "Install pf-kernel in Ubuntu / Debian" - følg det, men vær forberedt på at Ubuntu ligger henaf gulvbrædderne.

nymark1 skrev:Og hvis det går helt galt, kan man så geninstallere Ubuntu fra en usb nøgle?

Ja, selvfølgelig.

Jeg ville bruge en ældre PC som ikke bruges til noget vigtigt til det her - det vigtige er at du ikke blander din produktionsmaskine ind i det.
Med produktionsmaskine mener jeg den Ubuntu maskine, der er din dagligdags maskine, som helst skal virke uden knas.

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
nymark1
Indlæg: 223
Tilmeldt: 24. okt 2008, 08:13
IRC nickname: nymark1
Geografisk sted: Aalborg

Re: Bedre Linux desktop performance med pf-kerne

Indlæg af nymark1 »

Jeg fik kernen installeret.
Vejledningen til at installere med terminalen var en anelse for indviklet, så jeg højreklikkede bare på filerne og installerede med Gdebi. Det virkede faktisk.
Nogen ting virkede meget hurtigt efter genstart af maskinen. Især Firefox åbnede væsentligt hurtigere end den plejer.
Det eneste "ballade", kernen umiddelbart har lavet er at jeg ikke kan installere driver til mit trådløse netkort. Så det ender nok med at jeg installerer noget andet Linux igen ...
Men skægt at prøve :)
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: Bedre Linux desktop performance med pf-kerne

Indlæg af lath »

nymark1 skrev:Jeg fik kernen installeret.
Vejledningen til at installere med terminalen var en anelse for indviklet, så jeg højreklikkede bare på filerne og installerede med Gdebi. Det virkede faktisk.
Nogen ting virkede meget hurtigt efter genstart af maskinen. Især Firefox åbnede væsentligt hurtigere end den plejer.
Det eneste "ballade", kernen umiddelbart har lavet er at jeg ikke kan installere driver til mit trådløse netkort. Så det ender nok med at jeg installerer noget andet Linux igen ...
Men skægt at prøve :)


Prøv at installere dkms pakken - hvis netkort pakken understøtter dkms skulle den oversætte en ny trådløs netkort device driver for dig - fuldautomatisk.
Du skal køre en reinstallastion af netkort driveren.

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags