What does `nomodeset` do
Solution 1:
The answer can be found here : http://ubuntuforums.org/showthread.php?t=1613132
nomodeset
The newest kernels have moved the video mode setting into the kernel. So all the programming of the hardware specific clock rates and registers on the video card happen in the kernel rather than in the X driver when the X server starts.. This makes it possible to have high resolution nice looking splash (boot) screens and flicker free transitions from boot splash to login screen. Unfortunately, on some cards this doesnt work properly and you end up with a black screen. Adding the nomodeset parameter instructs the kernel to not load video drivers and use BIOS modes instead until X is loaded.
Solution 2:
Many open source drivers have removed support for non-kernel mode setting, so in those cases when you use nomodeset you will end up falling back to the very basic VESA un-accelerated driver. This is very much a performance and feature hit.
nomodeset should not have any effect on the proprietary (fglrx/nvidia) drivers. They don't have this kind of kernel mode setting.
Removing "splash" is what got rid of the Plymouth boot*splash*.
Radeon just finished removing support for "User Mode Setting" (what nomodeset forces the computer to use) relatively recently, but with Intel graphics it has been the case for a while. http://lists.x.org/archives/xorg-announce/2012-November/002093.html