Please note this list of instructions is constructed off my memory, and it will almost certainly semi-permanently mess up rendering on your laptop, please only attempt it at your own risk!
Steps to "working" nvidia gpu in Natty on ASUS 1215N:
- Upgrade to Natty
- Blacklist nouveau, fbcon, vga16fb in
/etc/modprobe.d/blacklist.d
by adding following lines:
blacklist nouveau
blacklist fbcon
blacklist vga16fb
- Make a backup of
/usr/lib/xorg/modules/extensions/libglx.so
(sometimes installing nvidia proprietary driver overwrites libglx.so
, breaking glx for the intel driver). If that happens, restore it with the copy that you've backed up, or reinstall xserver-xorg-core. - Follow instructions on the Ironhide Project Website and install Ironhide. This automatically pulls in nvidia-current. Make sure this process does not create
/etc/X11/xorg.conf
, if that happens, rename it to something else. Otherwise, you'll get a blank screen when you boot up your laptop again. - Reboot your laptop.
- now try optirun -f glxinfo, and you should see
Direct Rendering: Yes
. (Also, glxgears gets about 60 fps with i915, but ~170 fps with nvidia (optirun -f glxgears).
Finally, to start rviz:
roscd rviz
optirun -f ./bin/rviz
How this works: By default, all rendering to the screen are done through the i915 kernel module. Ironhide tunnels an invisible rendering buffer for the nvidia gpu to the screen using VirtualGL. For details, please consult the ironhide site.
Potential trouble: If something goes wrong, and you find yourself having to "type in the dark" because screen rendering has been compromised, boot into rescue mode, remove or rename /etc/X11/xorg.conf
, make sure you have the i915
kernel module installed:
sudo apt-get install --reinstall xserver-xorg-video-intel xserver-xorg-core
and reboot.
Please let me know if you make any attempts to replicate this process, so I can refine and make corrections to the above instructions.
Lastly, for reference, turtlebot gazebo simulation runs about 1.4Xreal-time on the asus laptop if sensor generation is not activated. Once you subscribe to the kinect point clouds, simulation drops to about 0.15Xreal-time.