størrelsen på swap partition for 32/64gb ram uden brug af suspend/hibernate

1bot.dk
Antal: 161
Tilmeldt:
16-12-2017
User is offline
størrelsen på swap partition for 32/64gb ram uden brug af suspend/hibernate

Hej herinde

Hvad er jeres erfaringer mht brug af størrelsen på swap partion for 32/64gb ram uden brug af suspend/hibernate??

Og hvad bruger jeg så os til, ja ihverttilfald ik høj-intens brug af ram, nok mere almindelig brug med en lille tvist af virtuelle maskiner via qemu&vbox, men spørgsmålet er nok snarer hvad den fornuftigt løsning er??

Mit eget resouce via google.dk gav:
1) REL (redhat) anbefaler at man køre 4gb swap partion ifm 64gb ram fundet på superuser.com

2) itsfoss.com gav mig følgende svar på 6gb swap med 32gb ram og 8gb swap med 64gb ram (anbefalingen er fra ubuntu)

3) opensource.com gav mig følgende svar på 4gb swap partion for 32&64gb ram uden brug af suspend/hibernate (se linkets første tabel)

/1bot.dk

NB: Jeg erfarede igår i søgning at det er ik en videnskab, nok mere en kunst-art pga hvad swappen bruges til og hvordan man bruger sin computer, men kom endelig med jeres erfaringer!!


julemand101
julemand101's picture
Antal: 1685
Tilmeldt:
17-01-2004
User is offline
Da du bare kan lave en

Da du bare kan lave en swap-fil frem for en swap-partition så er svaret egentlig bare at lave den så lille som du føler for det og hold øje med om der er brug for mere i visse situationer (lav evt. et lille script der hvert minut logger hvor meget swap du bruger i starten).

En anden løsning er at bruge den tomme plads du bør efterlade på en SSD (ffor at sikre en højere levetid) som en swap partition. Eftersom du har rigeligt med RAM vil det være meget sjældent du bruger noget af denne plads. Linux swap understøtter TRIM og kan derfor kommunikere ud til din SSD når der er blokke der ikke er i brug:
https://unix.stackexchange.com/questions/413131/do...


frogmaster
frogmaster's picture
Antal: 4262
Tilmeldt:
20-05-2010
User is offline
Der er, udfra din info i #0,

Der er, udfra din info i #0, ikke noget der medfører du overhovedet behøver virtuel hukommelse. Du er rigeligt dækket ind uden swap med 32GB RAM.

Selv med 3 samtidigt kørende 64bit VM's, hver med 8GB tildelt RAM, har du stadig RAM nok til hardware installationen. Med svimlende 64GB RAM, kan du køre mere end det dobbelte.

Hvis du ønsker et script til at kontrollere maskinens RAM og Swap forbrug, kan du køre dette:

#! /bin/bash
# Check RAM and SWAP Usage
    free -h | grep -v + > /tmp/ramcache
    echo -e "\033[33;1mRam Usages  :\033[0m"
    cat /tmp/ramcache | grep -v "Swap"
    echo -e "\033[33;1mSwap Usages :\033[0m"
    cat /tmp/ramcache | grep -v "Mem"
    echo
$SHELL

1bot.dk
Antal: 161
Tilmeldt:
16-12-2017
User is offline
reflektion over #1 og #2

Hej igen

#1) Den med at bruge den tomme plads som swap er en god ide (det er en nvme 512gb disk jeg har i m.2 porten) og jeg har set en youtube-video der fortæller at 10% skal være fri (plads) lidt ligesom 25% på en konventionel-disk (hhd), men jeg heler nok mest til enten, 4gb swap-partion på både 32&64gb ram mht REL anbefaling, eller 6gb/32gb 8gb/64gb (swap-partion/ram) som jo er ubuntus anbefaling.

#2) Jeg har læst mig til at der skal være en lille swappartion selvom den ik bruges. Jeg ved udemærket godt at 64gb er svimlende meget også selvom jeg bruger 16gb pr virtuelle maskine i qemu&vbox. Men det var også mere generelt, så systemet har en swap-partion hvis uheldet skulle være ude en dag.

Jeg er ik lige klar over hvordan jeg afvikler dit script, er det mousepad (text editor i de=xfce) og så noget med et efternavn ligesom i windows (*.exe) for at man skal kunne dobbelt klikke på filen med musen?? (jeg har fundet linket via lidt google-søgning på "scriptfiler i linux" og jeg har kun læst linket halvt igennem, da jeg er for træt nu!)

Iøvrigt frogmaster har du prøvet at installere win7pro på en m.2 nvme??

/1bot.dk


frogmaster
frogmaster's picture
Antal: 4262
Tilmeldt:
20-05-2010
User is offline
Hej igen.Man kan ikke

Hej igen.

Man kan ikke udelukke at et eller andet program behøver en swap fil, så det er en god ide at have en, helst så lille som muligt når det handler om så meget RAM. Omkring 250 - 300 MB er formentlig nok.

Når det er sagt, så er det generelt bedst at lade operativ systemet selv afgøre størrelsen på swap filen. I hvert fald hvis man ikke helt ved hvad man laver.

Du kopierer indholdet i kode boksen til en tekst editor som eksempelvis gedit, leafpad, mousepad, xed eller tilsvarende, men ikke libreoffice, og gøre den executable. Alt efter DE, kan du så enten dobbeltklikke på bash filen eller starte den fra terminalen. Hvis du gemmer filen som fx tjek-ram-swap, er kommandoen fra terminalen: ./tjek-ram-swap - Med Linux behøver filen ikke et efternavn (*.et-eller-andet). Du kan også bare nøjes med at skrive free -h i terminalen.

Jeg har aldrig installeret Win7 på en m.2 nvme og jeg tvivler på det kan lade sig gøre. Skal det være Windows, så skal det formentlig være Win10. Imidlertid bør det kunne lade sig gøre hvis Win7 installeres i en VM der kører på m.2 nvme.


julemand101
julemand101's picture
Antal: 1685
Tilmeldt:
17-01-2004
User is offline
#4 Det er også vigtigt at

#4
Det er også vigtigt at bemærke at swap ikke nødvendigvis kun benyttes pga. for lidt RAM. Eftersom ledig RAM bruges som cache af operativ systemet af seneste åbne filer så kan det sagtens give mening at smide et program ned i swap som fx ikke er blevet kørt i flere dage for i stedet at have mere plads til cache.

Hvis du har servere kørende kan du se dette ske jævnligt hvor swap er blevet benyttet trods der aldrig har været en hændelse på systemet der her medført et lavt niveau af ledig RAM.


frogmaster
frogmaster's picture
Antal: 4262
Tilmeldt:
20-05-2010
User is offline
#5 Ja, enig.

#5

Ja, enig.


frogmaster
frogmaster's picture
Antal: 4262
Tilmeldt:
20-05-2010
User is offline
men jeg heler nok mest

#3: men jeg heler nok mest til enten, 4gb swap-partion på både 32&64gb ram mht REL anbefaling, eller 6gb/32gb 8gb/64gb (swap-partion/ram) som jo er ubuntus anbefaling.

Ingen af de anbefalinger er optimale IHT dine oplysninger. Heller ikke at oprette en swap-partition. I bedste fald fald er det spild af plads på en SSD, der ikke er større end en ½ TB.

Bemærk at vi taler om en swap fil på hardwarens system partition. Ikke en swap partition. #1 nævner det iøvrigt allerede i første linje ...

Bemærk også at en SSD på 500GB ikke er specielt stor, især ikke med mange VM's. For bedst udnyttelse IHT dine oplysninger, så spar pladsen til en dedikeret swap partition og nøjes med en minimal swap fil, der blot ligger på system partitionen. Du vinder ca et sted mellem 6GB og helt op til 64 GB ifølge din info ...

At tildele VM's 16GB RAM er formentlig overkill. Du kan nøjes med 8 GB, selv på en VM med macOS Mojave og den nye Catalina, som er de absolut største resource hogs. Med 8 GB RAM, tildelt hver VM, kører du fint samtlige operativ systemer installeret virtuelt på en Linux host. Gevinsten er at du kan køre flere VM's samtidigt.

Imidlertid kan det ske at VM's på en Linux host, ikke kan aktivere hardware acceleration selvom den er aktiveret i BIOS/UEFI. Der findes PT en fungerende løsning, der ikke blot er et workaround. For hvem der oplever problemet, så vær venlig at oprette en forespørgsel.

Iøvrigt kan du nogenlunde det samme på en Win10 host, men der er PT kendte problemer med lyden på Linux VM's installeret på Win10 host's. Der er endnu ingen løsning (VMware), men der er et workaround. Derfor vil jeg ikke anbefale hosten er installeret med Windows 10. Win10 opgraderinger løser ikke problemet. Det vil jeg gerne dokumentere hvis ønsket ...

For ekstra info, så fungerer alle VM's på en macOS host Out of Box, inklusiv Linux, men fordi macOS er den ultimative resource hog, udover det skal være en Apple maskine, så kræver den helst 16 GB RAM for bare at trække en VM ... 8 GB RAM kan gøre det, men ikke uden visse problemer. Imidlertid har det intet med din henvendelse at gøre ...


frogmaster
frogmaster's picture
Antal: 4262
Tilmeldt:
20-05-2010
User is offline
Og hvad bruger jeg så

#0: Og hvad bruger jeg så os til, ja ihverttilfald ik høj-intens brug af ram, nok mere almindelig brug med en lille tvist af virtuelle maskiner via qemu&vbox, men spørgsmålet er nok snarer hvad den fornuftigt løsning er??
Svaret er kort at du, efter beskrivelse, har anskaffet dig en mother-fucker af en maskine og du angiveligt ikke udnytter den maksimalt.

Det fornuftigste svar er derfor - Udnyt den, før den alligevel ender med at blive forældet ... Udtrykker jeg mig klart nok?


FrugalMan
FrugalMan's picture
Antal: 1286
Tilmeldt:
18-12-2007
User is offline

frogmaster
frogmaster's picture
Antal: 4262
Tilmeldt:
20-05-2010
User is offline
#9Det er afgjort et

#9
Det er afgjort et relevant link.

Hvordan konfigurerer man så størrelsen på swapfilen i Linux? Et eksempel herunder, hvor swap reduceres til 300 MB og hvor swapfilen blot er oprettet på system partitionen. Vi bruger DD til det:

Note: Det er forældet at oprette en dedikeret swap partition, med mindre der er tale om helt specielle behov.

Det er nødvendigt at nævne jeg kun har testet det på Ubuntu derivater

1. Stop swap:
sudo swapoff -a

2. Ændr størrelsen på Swap til 300 MB:
sudo dd if=/dev/zero of=/swapfile bs=300M count=1

(Hvis du fortryder og ønsker en anden swap størrelse, så er her et vejledende eksempel hvor størrelsen ændres til 2 GB):

sudo dd if=/dev/zero of=/swapfile bs=1G count=2

For at omgøre alle ændringer, læs: https://linuxize.com/post/how-to-add-swap-space-on... (Ubuntu) eller på Debian 9: https://linuxize.com/post/how-to-add-swap-space-on...

3. Gør swapfilen brugbar:
sudo mkswap /swapfile

4. Start swap:
sudo swapon /swapfile

5. Tjek om det fungere:
grep SwapTotal /proc/meminfo
Alternativt: free -h

6. Genstart maskinen og tjek om swap filen nu er 300 MB

Man kan udmærket formindske swapfilen på eksempelvis 64bit Linux maskiner (også desktops), med kun 3-4 GB RAM. På Linux maskiner med roterende harddiske, vil det samtidigt forøge hastigheden en smule, men fordi der formentlig kun anbringes få MB i swap, så er forøgelsen minimal.