Visualization: graphics cards and 3D
graphics cards and drivers
- NVidia (proprietary driver download for Linux at [1]; "Latest cards" list at [2], "Legacy cards" list at [3]). RedHat/Fedora/Debian/[K]Ubuntu installation information can be found at [4]. In particular, for RedHat/Fedora one needs to install the kernel-devel RPM package.
The proprietary driver works well but it needs a bit of care. On RedHat systems that are regularly booted, the following lines in /etc/rc.local result in the necessary parts of the driver being re-installed automatically after booting:
if [ ! -h /usr/lib/xorg/modules/extensions/libglx.so ]; then
echo "re-installing NVIDIA driver. This takes some time. Ignore any warnings."
/root/NVIDIA.run --no-network -s -n
fi
if [ ! -e /lib/modules/`uname -r`/kernel/drivers/video/nvidia.ko ]; then
echo "installing NVIDIA kernel module. This takes some time. Ignore any warnings."
/root/NVIDIA.run --no-network -s -K -n
fi
If everything is ok with the driver you get the following output from "glxinfo|head":
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGI_video_sync, GLX_SGI_swap_control,
GLX_EXT_texture_from_pixmap, GLX_ARB_multisample, GLX_NV_float_buffer
client glx vendor string: NVIDIA Corporation
Sometimes it handy to configure two Desktops: one on a CRT monitor that can do stereo-graphics, and one on an LCD monitor for the more regular work, eg your refinement jobs with CCP4. For Nvidia cards you need to modify the xorg.conf file to have a section more or less like that:
Section "Monitor"
Identifier "Monitor0"
VendorName "Iiyama"
ModelName "Vision Master Pro 512"
DisplaySize 450 330
HorizSync 31.5 - 120.0
VertRefresh 50.0 - 150.0
Option "dpms"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Philips"
ModelName "150B"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "nvidia"
VendorName "Videocard vendor"
BoardName "NVIDIA Quadro FX (generic)"
BusId "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Videocard1"
Driver "nvidia"
VendorName "Videocard vendor"
BoardName "NVIDIA Quadro FX (generic)"
Option "Stereo" "3"
BusId "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1024x768" "800x600"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Videocard1"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1600x1280" "1280x1024" "1024x768" "800x600"
Note that one can think this is rather silly to define two card, two monitors, two cards, and two screens. However, that the only way I know that one monitor can be streo-enabled and the other one not.
- ATI (now belonging to AMD) (proprietary driver download at http://ati.amd.com)