So for the past two days, I’ve been attempting to set up a dual-boot system with Ubuntu 15.04 and Windows 10 on a computer with UEFI firmware. But at every attempt, the computer always became unresponsive at the point when the installer is installing GRUB to the target partition.

Not knowing what the cause was, I’ll force-reboot the computer and start all over, changing the device for boot loader installation from /dev/sda2 to //dev/sda each time.

The result was always the same, which I captured in the screen shot below. With 4 GB of RAM and an Intel Core i3 processor, the computer is a elatively powerful unit, so I didn’t think it was just running out of resources to power the installer.
Ubiquity Installer

But I later determined that that was the cause – the computer was running out of RAM. And though I was running the Ubuntu Ubiquity installer from the Live desktop, no other programs were active, save for what normally runs on an Ubuntu 15.04 Live desktop. The code block below shows the typical memory usage of the unit at about the time that it freezes, or becomes unresponsive.

             
              total       used       free     shared    buffers     cached
Mem:          3658       3519        139        261          0       2177
-/+ buffers/cache:        593       3065
Swap:         3814        274       3540

The solution was to keep running the command that frees up cached memory until the installation completed. To do that, I had to become root using the sudo su command. And the command that frees up cached memory is sync && echo 3 > /proc/sys/vm/drop_caches. Now I have Ubuntu 15.04 and Windows 10 installed on a computer with UEFI firmware (no Secure Boot) in dual-boot fashion. Hope this crude solution helps somebody.