Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

For a desktop installation in a new and shiny laptop (let's say 16gb ram and ssd hd), does it make sense to have a swap partition?

share|improve this question
    
On my laptop, I've got 8GB RAM (allocated 2 GB to tmpfs). I'm fine without a swap, until I launch a few VMs, or open hundreds of tabs in Chromium. This only happens if I'm careless. You should be fine with 16 GB of RAM and no swap. –  Rob W May 24 '13 at 17:32

5 Answers 5

up vote 8 down vote accepted

Yes you need swap, if you just use it for suspend and minor swap actions a swap file somewhere on your disk might be fine, And i been using swap file from almost a year never ever had problem with it, just don't like partitioning the disk.

Just copy paste the following line in terminal and it will create 2 GB of swap

sudo su

Then Copy Pate the following

mkdir /swap && cd /swap && fallocate -l 2g 2GB.swap && mkswap 2GB.swap && swapon 2GB.swap && echo "# # # Swap File # # #" >> /etc/fstab && echo "/swap/2GB.swap    none                   swap               sw                       0       0" >> /etc/fstab && mount -a

Swap ( Partition VS file ) For Performance

Down Side

You cannot hibernate to swap file, as mentioned by @Takkat, I have check and i have 1st time in my life try to hibernate but its not working, so if you want to hibernate yo need swap partition, otherwise if swap file is good to go.

Hibernate vs. Suspend

share|improve this answer
    
(((( suspend ))))) –  Qasim May 24 '13 at 11:12
    
I've never hibernated, always suspend so I think I'm gonna use your advice to have swap in a file. Probably just a script for times when I could use all ram available –  Frey Olake May 24 '13 at 11:27
    
I am able to suspend without a swap partition or a swap file. –  Kris Harper May 24 '13 at 14:14
    
@KrisHarper yes you can ....howtogeek.com/113923/how-to-re-enable-hibernate-in-ubuntu-12.04 its good to have something for swap.. –  Qasim May 24 '13 at 14:23
    
I'm saying that I don't think you need a swap file or swap space if you just use suspend. You definitely need it for hibernate, but I can use suspend just fine without it. –  Kris Harper May 24 '13 at 14:51

If you want to be able to hibernate, then yes, it is necessary to have a swap partition at least as large as your total RAM.

Apart from that, if you have 16GB of RAM then in principle probably not - I've seen people saying that 1GB is plenty to run without swap, though I imagine it would boil down to a matter of opinion for many people. In my case, I'm running a laptop with 8GB RAM and have a swap the same size for hibernation purposes (with the side-effect that it provides a buffer if my work becomes particularly memory-intensive, as it can do sometimes)

share|improve this answer
4  
I always keep at least some swap even on my 12GB machine. Running solely on memory is never advisable under any circumstances. And you'll be glad you spared some swap when you're at 99% memory usage and about to kernel panic :p (on a more serious note, it's good for paging out programs that are in standby, giving you more working memory in exchange for hard drive space which is always a good deal) –  Thomas May 24 '13 at 15:02

Is this a theoretical question or a practical one?

In practice, there's almost no reason to avoid a swap partition because disk space is cheap and plentiful (especially on shiny new laptops).

On paper, it might seem that 16GB of memory will never be used up. Consider these circumstances:

  • certain programs (e.g. video editors, LibreOffice) use an exorbitant amount of pages when starting up for initialization, then never used again
  • unforeseen circumstances: a program going crazy, a fork bomb

Now consider them happening at the same time. A swap partition will serve as a buffer when unpredictable events line up, buying you some time before the system crashes to save work, etc.

Specifically because have a laptop, there will come a time when hibernation saves your skin. Perhaps you will leave your computer for a coffee break, but something comes up and you, instead, return an hour later. If your battery picks that moment to die, hibernation will protect your unsaved work.

share|improve this answer

Well, for over a year I have not partitioned my SSD and also have no swap file. I have been using the same SSD (512 GB) in two different notebooks. The older one had 8GB RAM, the newer has 16 GB. I use the RAM for temporary files and Firefox Cache and with the 8 GB I sometimes noticed the system getting slow when syncing huge files with grsync. Now with 16 GB RAM (and maybe also newer Ubuntu version 13.04) I have not encountered any problems whatsoever. Also I believe that partitioning is not good for SSDs and is a way of wasting expensive storage. So I only can speak from my experience with SSD/16GB RAM: with this constellation I would certainly not use SWAP and even with 8GB RAM I was ok. Hibernation has been buggy anyway and Standby is much faster

share|improve this answer

You can make a swap file instead and hibernate with it too, I have made swap files on my laptop so I can hibernate each of my linux installations. Otherwise hibernate would just overwrite the last hibernation if I was using one swap partition. This is my method. Notice you must hibernate using the kernel method: echo disk > /sys/power/state

sudo -s 
fallocate -l 4000m /swap_file  #4000 mb, may want higher than 4000mb
swapoff -a

mkswap /swap_file

nano /etc/fstab
#delete previous swap entry then add
/swap_file   swap    swap    defaults        0       0
#then save and exit

swap-offset /swap_file  #remember the output of this
nano /etc/grub.d/40_custom
add to linux line:    resume=<partition swapfile is on> resume_offset=<swap-offset return data>

swapon -a
nano /home/name/bin/hibernate_shutdown
#!/bin/bash
echo shutdown > /sys/power/disk
echo disk > /sys/power/state

create shortcut. system-settings->keyboard->shortcuts->custom shortcuts  add
gnomesu /home/name/bin/hibernate_shutdown
set to F11
chmod +x /home/name/bin/hibernate_shutdown
restart computer

viola if you want to restart after hibernate instead of shutdown

echo reboot > /sys/power/disk
echo disk > /sys/power/state
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.