Discussion:
[vtkusers] Compiling vtk on an nvidia card
Luca Pamparana
2007-06-14 09:12:12 UTC
Permalink
Hi everyone,

I just installed an Nvidia GeForce 7600 GS card on my machine. However, I do
not see any performance increase in vtk on the linux system. However, the
windows version of my program runs so much faster! I am wondering if it is
the OpenGL libraries that I am linking to.

Does anyone have experience regarding this? I installed the nvidia-glx and
the nvidia-dev packages but wonder which openGL libraries do I have to link
to.

Thanks for any help you can give me.

Luca
fred
2007-06-14 09:59:50 UTC
Permalink
Post by Luca Pamparana
Hi everyone,
I just installed an Nvidia GeForce 7600 GS card on my machine.
However, I do not see any performance increase in vtk on the linux
system. However, the windows version of my program runs so much
faster! I am wondering if it is the OpenGL libraries that I am linking
to.
Does anyone have experience regarding this? I installed the nvidia-glx
and the nvidia-dev packages but wonder which openGL libraries do I
have to link to.
Try:

glxinfo

Does it say: "direct rendering: Yes" ?
--
http://scipy.org/FredericPetit
Kent Eschenberg
2007-06-14 11:53:09 UTC
Permalink
Luca,

I've had similar problems. Most Linux systems are delivered with Mesa which
simulates OGL and your graphics card in software. You must make sure that the
installation of the Nvidia driver replaced the Mesa files. There are several
situations to check.

1) Compile Time

Run ccmake and find the references to OGL-related files. Then go look at those
files to make sure they are the ones for the Nvidia card. These are probably in
/usr/lib and /usr/include (perhaps in subdirectory GL).

2) Run Time

Run "ldd paraview", see which shared objects it plans to use, look at the
GL-related files, and make sure they are for Nvidia not Mesa. If needed change
the files or add the paths to the correct files to your environment variable
LD_LIBRARY_PATH.

3) Update Time

We've seen the update process replace the Nvidia files with the original Mesa
files. Check after each update to see what happens on your system.

Kent
Pittsburgh Supercomputing Center
Post by Luca Pamparana
Hi everyone,
I just installed an Nvidia GeForce 7600 GS card on my machine. However,
I do not see any performance increase in vtk on the linux system.
However, the windows version of my program runs so much faster! I am
wondering if it is the OpenGL libraries that I am linking to.
Does anyone have experience regarding this? I installed the nvidia-glx
and the nvidia-dev packages but wonder which openGL libraries do I have
to link to.
Thanks for any help you can give me.
Luca
Kevin H. Hobbs
2007-06-14 18:18:36 UTC
Permalink
Post by Kent Eschenberg
Luca,
I've had similar problems. Most Linux systems are delivered with Mesa which
simulates OGL and your graphics card in software. You must make sure that the
installation of the Nvidia driver replaced the Mesa files. There are several
situations to check.
The packages from Nvidia and ATI are broken. The system files from Mesa
should not be replaced. This causes all sorts of trouble. The files
should be installed alongside the system packages. For Fedora at least
rpm.livna.org provides repackaged drivers for both ATI and nvidia that
do not conflict with the system libraries. xorg-x11-drv-fglrx places
library files in /usr/lib64/fglrx and xorg-x11-drv-fglrx-devel has
renamed headers glATI.h and glxATI.h in /usr/include/GL/. You can point
CMake to these files instead of the system packages

I have a ParaView built against the ATI drivers.

[***@gargon ~]$ ldd ~/kitware/ParaView_fglrx_Build/bin/paraview |
grep /usr/lib64/fglrx
libGL.so.1 => /usr/lib64/fglrx/libGL.so.1 (0x000000396b600000)

Kent's advice about using ldd and LD_LIBRARY_PATH will be very useful.
You may want to set your environment variables CMAKE_LIBRARY_PATH and
CMAKE_INCLUDE_PATH to help CMake find the correct drivers. you may also
want to look at ld.so.conf and ld.so.conf.d/ these do the same thing as
CMAKE_LIBRARY_PATH but system wide. If you build VTK with rpaths you
don't have to worry about runtime paths but you can't inatall VTK system
wide.
Post by Kent Eschenberg
3) Update Time
We've seen the update process replace the Nvidia files with the original Mesa
files. Check after each update to see what happens on your system.
I hear this is just the tip of the iceberg.
Jonathan Bailleul
2007-06-28 00:25:48 UTC
Permalink
Post by Luca Pamparana
Hi everyone,
I just installed an Nvidia GeForce 7600 GS card on my machine. However,
I do not see any performance increase in vtk on the linux system.
However, the windows version of my program runs so much faster! I am
wondering if it is the OpenGL libraries that I am linking to.
Does anyone have experience regarding this? I installed the nvidia-glx
and the nvidia-dev packages but wonder which openGL libraries do I have
to link to.
Thanks for any help you can give me.
Luca
------------------------------------------------------------------------
_______________________________________________
This is the private VTK discussion list.
Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
http://www.vtk.org/mailman/listinfo/vtkusers
It is almost always mandatory to go to nvidia's website and download the
latest drivers for linux. The installation will certainly require that
kernel sources are present on your system (just install the package),
but it will be completely automatic besides that, including xorg.conf
modifications.

Then, when you will run X (to log in), a Nvidia splash screen will
appear, indicating that proprietary drivers are in use (is it the case
already?). Most generic drivers are just very very lame and do not seem
to be optimized at all.
Evan Bollig
2007-06-28 00:44:31 UTC
Permalink
Related to this, has anyone developed classes that take advantage of
the Nvidia 8800's CUDA architecture? What classes should I refer to
first if I wanted to work on CUDA optimizations?

-Evan
Post by Jonathan Bailleul
Post by Luca Pamparana
Hi everyone,
I just installed an Nvidia GeForce 7600 GS card on my machine. However,
I do not see any performance increase in vtk on the linux system.
However, the windows version of my program runs so much faster! I am
wondering if it is the OpenGL libraries that I am linking to.
Does anyone have experience regarding this? I installed the nvidia-glx
and the nvidia-dev packages but wonder which openGL libraries do I have
to link to.
Thanks for any help you can give me.
Luca
------------------------------------------------------------------------
_______________________________________________
This is the private VTK discussion list.
Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
http://www.vtk.org/mailman/listinfo/vtkusers
It is almost always mandatory to go to nvidia's website and download the
latest drivers for linux. The installation will certainly require that
kernel sources are present on your system (just install the package),
but it will be completely automatic besides that, including xorg.conf
modifications.
Then, when you will run X (to log in), a Nvidia splash screen will
appear, indicating that proprietary drivers are in use (is it the case
already?). Most generic drivers are just very very lame and do not seem
to be optimized at all.
_______________________________________________
This is the private VTK discussion list.
Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
http://www.vtk.org/mailman/listinfo/vtkusers
Jesús Spí­nola
2007-06-28 19:18:25 UTC
Permalink
You have to install the nvidia propietary drivers to take the best
performance of your nvidia GPU. Depending wether linux distro you are using
it will be easier or harder. In most desktop oriented distros ( *ubuntu,
mandriva, suse,... ) you should have the drivers availible in a package (
rpm or deb ). If your distro does not provide any nvidia propietary driver
package you can go to http://www.nvidia.com/object/unix.html and download
the binary and follow the instructions.

The general process to install the drivers is the following

Make sure you have the source code of your current kernel installed ( the
stripped version is enough )
Install the drivers ( via package or via binary )
Configure the xorg.conf file to load the correct driver

In my case I use Mandriva and it is as simple as adding to the urpmi
database the plf-nonfree repository and type "urpmi nvidia" (with the X
server shut down).
Post by Evan Bollig
Related to this, has anyone developed classes that take advantage of
the Nvidia 8800's CUDA architecture? What classes should I refer to
first if I wanted to work on CUDA optimizations?
-Evan
Post by Jonathan Bailleul
Post by Luca Pamparana
Hi everyone,
I just installed an Nvidia GeForce 7600 GS card on my machine.
However,
Post by Jonathan Bailleul
Post by Luca Pamparana
I do not see any performance increase in vtk on the linux system.
However, the windows version of my program runs so much faster! I am
wondering if it is the OpenGL libraries that I am linking to.
Does anyone have experience regarding this? I installed the nvidia-glx
and the nvidia-dev packages but wonder which openGL libraries do I
have
Post by Jonathan Bailleul
Post by Luca Pamparana
to link to.
Thanks for any help you can give me.
Luca
------------------------------------------------------------------------
Post by Jonathan Bailleul
Post by Luca Pamparana
_______________________________________________
This is the private VTK discussion list.
http://www.vtk.org/Wiki/VTK_FAQ
Post by Jonathan Bailleul
Post by Luca Pamparana
http://www.vtk.org/mailman/listinfo/vtkusers
It is almost always mandatory to go to nvidia's website and download the
latest drivers for linux. The installation will certainly require that
kernel sources are present on your system (just install the package),
but it will be completely automatic besides that, including xorg.conf
modifications.
Then, when you will run X (to log in), a Nvidia splash screen will
appear, indicating that proprietary drivers are in use (is it the case
already?). Most generic drivers are just very very lame and do not seem
to be optimized at all.
_______________________________________________
This is the private VTK discussion list.
http://www.vtk.org/Wiki/VTK_FAQ
Post by Jonathan Bailleul
http://www.vtk.org/mailman/listinfo/vtkusers
_______________________________________________
This is the private VTK discussion list.
http://www.vtk.org/Wiki/VTK_FAQ
http://www.vtk.org/mailman/listinfo/vtkusers
Loading...