I’ve just treated myself to a quad core (8 virtual core) Dell E6420 with 8GB RAM, 128GB SSD, NVIDIA NVS 4200M GPU (with integrated Intel GPU) and the high spec screen. It is rather nice. It comes with Win 7 Pro installed (fine for some libraries I’ll need and maybe some MS Office), I’ve just installed Ubuntu 11.04 64 bit. Obviously there were some hiccups…
Update – I’ve regressed to the 10.10 drivers from Dell (see: E6420 with Ubuntu 10.10) which seems to fix all the problems I had with 11.04.
Out of the box Ubuntu Natty Narwahl installed just fine, it took about 10 minutes from CD. It reported on first boot that I had an incompatible graphics card. This is because the Optimus NVIDIA technology (which swaps between low-power mode on the Intel card and high-power GPU mode with the 4200M) only works on Windows. I rebooted, dropped to the BIOS and disabled Optimus, after this I got no more warnings from X Windows. Details on Optimus here.
On my next boot I asked the Additional Drivers system to enable my NVIDIA card. It installed, then I had to run ‘sudo nvidia-xconfig’. This worked fine. Note that at first (before disabling Optimus) I tried this and got a ‘VALIDATION ERROR: Data incomplete in file /etc/X11/xorg.conf.’ error – just disable Optimus and that problem goes away. You might need to manually move your /etc/X11/xorg.conf.backup file to xorg.conf if you’ve lost graphics along the way.
The touchpad (as a basic mouse), sound and wifi worked fine. Flash ran in YouTube but there was no sound – under the Sound dialog I had to go to Output and choose ‘Internal Audio Analogue Stereo’ rather than ‘HDA NVIDIA Digital Stereo (HDMI)’, in the background the YouTube video that was playing suddenly played through the speakers.
The touchpad doesn’t have multitouch features yet – there’s a proprietary driver on Windows which doesn’t exist on Linux yet (though progress is being made). Details here. If you touch the touchpad and it makes a click and you don’t like the behaviour, disable it here. Personally I’m happy with the touch behaviour.
I upgraded to the latest NVIDIA drivers using:
- sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
- sudo apt-get update
- sudo apt-get install nvidia-current
- sudo apt-get install nvidia-settings
After a reboot I could see the latest drivers (via Synaptic). Running a video in VLC took no extra CPU (meaning that the work is done on the GPU via VDPAU). There is an upcoming project called Bumblebee that will let us use the lower-power Intel GPU for normal graphics and will only switch to the NVIDIA card for intensive work (I want it for CUDA programming) but for now it looks like a bit of a faff. I’m just going to leave the NVIDIA 4200M running full time.
I’m also happy to see that HDMI support worked out of the box – I plugged in a cable, then had to go to the NVIDIA Settings tool to Auto-detect the monitors, then enabled TwinView and had a double-width monitor setup. The built-in Monitor tool didn’t see my extra monitor (but I guess this is all controlled by the NVIDIA stuff).
I’ve had about 3 hours for this session on the regular 6 Cell battery, that included downloading a lot of stuff and rebooting a number of times. This seems reasonable given that the NVIDIA 4200M is power hungry and runs all the time. Apparently in Windows I’d see up to 7 hours on the same hardware if Optimus is enabled. Ho hum.
I’m very impressed with the SSD – it is silent and everything feels much snappier. It was worth spending a few hundred extra pounds and losing a lot of space, the experience is far nicer. The screen is also beautiful (though the viewing angle isn’t amazing – but fine for single-use).
EDIT – installing CUDA 4 takes 10 minutes with these great instructions. It is fun to see the GPU clocking in at 90 degrees C whilst running randomFog, smokeParticles and the nbody demos.
EDIT – installing mongodb auto-starts it, it is controlled as a system service using ‘sudo [start|stop] mongodb’ as detailed here.
EDIT – installing matplotlib on Ubuntu 11.04 was a touch annoying. ‘pip install’ got a really old version (0.91!). Instead I grabbed the src for 1.0.1 and then manually had to install libfreetype6-dev2.4.4-1ubuntu2 and libpng12-dev. After that the usual setup.py process worked fine.
EDIT – to fix the hang-on-reboot issue that I’ve noticed I followed this and added “reboot=pci” as noted to /etc/default/grub (and then ran ‘sudo update-grub’). Now reboots work correctly (previously only a Shutdown would work correctly).
EDIT – I was running laptop-mode-tools and PowerTop reported 13-15W usage. I’ve disabled it for now as I have a Suspend/Hibernate bug, without laptop-mode PowerTop is reporting 15-18W usage (both after boot, doing almost nothing – the CUDA card is power hungry!).
Ian applies Data Science as an AI/Data Scientist for companies in ModelInsight and in his Mor Consulting, sign-up for Data Science tutorials in London. He also founded the image and text annotation API Annotate.io, lives in London and is a consumer of fine coffees.