VTKEdge:FAQ

From KitwarePublic
Jump to navigationJump to search

Requirement

Compile time

  • VTKEdge svn compiles against VTK CVS.
  • Some classes use CUDA to perform parallel computation: http://www.nvidia.com/object/cuda_get.html . As of April 17 2009, the only classes using CUDA are vtkKWEImageFFT and vtkKWEImageRFFT. Notably,

the vtkKWEGPUVolumeRayCastMapper does not require CUDA.

  • In order to use the vtkKWEGPUInfo class under Windows, you need to install the DirectX SDK: http://www.microsoft.com/downloads/details.aspx?FamilyID=ea4894b5-e98d-44f6-842d-e32147237638&DisplayLang=en
  • In order to use the vtkKWEGPUInfo class under Linux with nVidia cards, switch the cmake variable VTKEdge_USE_NVCONTROL to ON and install the NVCtrl library. It gives access to the NV-CONTROL X extension.
    • If it is already installed on your system, you can find the library libXNVCtrl.a in /usr/lib/ and the header files NVCtrlLib.h and NVCtrl.h in /usr/include/NVCtrl/. On Ubuntu, those files are provided by the package "nvidia-settings".
    • You can also get them from the source package of nvidia-settings from ftp://download.nvidia.com/XFree86/nvidia-settings/. With the source package, all the relevant files are in src/libXNVCtrl/. Make sure to download a version of nvidia-settings equal or greater to 177.82 to avoid any license issue. (on August 25 2008, nVidia acknowledges that there is a mistake in the license of the NVCtrl library prior to 177.82, it should be MIT-X11 / BSD instead of GPL, only the nvidia-settings application is covered by the GPL, not the NVCtrl library: http://www.nvnews.net/vbulletin/showpost.php?p=1756087&postcount=8 )
  • the GUI based paintbrush tool demos require KWWidgets.

Run time

  • The volume mapper works with nVidia cards from GeForce 6 series (or Quadro equivalent) and above
  • The LIC algorithms work with nVidia cards from GeForce 8 series (or Quadro equivalent) and above


Issues

vtkKWEGPUVolumeRayCastMapper

fatal error C9999: Bad scope in ConvertLocalReferences()

This is an nVidia bug. It has been fixed by nVidia. Just update your driver.

TestKWEGPUArrayCalculator

time out on Vista

Depending on how fast/slow is the graphics card, the computation on the GPU can take more than 2 seconds. On Vista, after a 2 seconds timeout, the Windows Vista's Timeout Detection and Recovery (TDR) kills all the graphics contexts, resets the graphics chip and recovers the graphics driver, in order to keep the operating system responsive.

ref: http://www.opengl.org/pipeline/article/vol003_7/

This reset actually freezes the test. And it really times out this time...

Questions

Does vtkKWEGPUVolumeRayCastMapper requires CUDA?

No. See compile time section for classes that require CUDA. Remember that CUDA requires an nVidia card from the GeForce 8 series and above. See runtime section for classes requiring a GeForce 8 series and above,

Does VTKEdge requires KWWidgets?

No. You need them only if you'd like to build the GUI based paintbrush tool demos. See compile time section.