Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
VTK
VTK
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 580
    • Issues 580
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 163
    • Merge Requests 163
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • VTK
  • VTKVTK
  • Issues
  • #17063

Closed
Open
Opened Jun 11, 2017 by Sergiu Deitsch@sergiud

Qt examples fail to run on a discrete NVIDIA GPU

I'm on Arch Linux (GNOME 3.24, Wayland) using a workstation both with an integrated (Intel) and a discrete NVIDIA GPU. I use Bumblebee to run applications on the discrete GPU. Even though VTK 7.1.1 and 8.0 rc2 examples (excluding Qt) run on both GPUs, Qt (version 5.9) examples fail to start on the discrete GPU.

For instance, running the qtevents example on the discrete GPU using $ optirun ./qtevents fails with

Debug: Off
Modified Time: 1836
Reference Count: 1
Registered Events: (none)
Connections:
  QVTKInteractor:RightButtonPressEvent  <---->  GUI4::1popup( vtkObject*, unsigned long, void*, void*, vtkCommand*)
  QVTKInteractor:RightButtonPressEvent  <---->  GUI4::1popup( vtkObject*, unsigned long, void*, void*, vtkCommand*)
  QVTKInteractor:EnterEvent  <---->  QRadioButton::1animateClick()
  QVTKInteractor:EnterEvent  <---->  QRadioButton::1animateClick()
  QVTKInteractor:MouseMoveEvent  <---->  GUI4::1updateCoords(vtkObject*)
  QVTKInteractor:MouseMoveEvent  <---->  GUI4::1updateCoords(vtkObject*)
ERROR: In ../Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx, line 819
vtkXOpenGLRenderWindow (0x23e4da0): GLEW could not be initialized.

glewInit fails here with Missing GL version. This happens both with VTK 7.1.1 and one of the latest commits (6ee6af0c).

Trying to run a simple Qt based test application I wrote fails with the following message:

[VGL] ERROR: in TempContext--
[VGL]    52: Could not bind OpenGL context to window (window may have disappeared)

Here is the information on GPUs being used.

Intel GPU:

$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics P530 (Skylake GT2) 
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.1.2
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 17.1.2
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 17.1.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:

NVIDIA GPU:

$ optirun glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: Quadro M1000M/PCIe/SSE2
OpenGL core profile version string: 4.5.0 NVIDIA 381.22
OpenGL core profile shading language version string: 4.50 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.5.0 NVIDIA 381.22
OpenGL shading language version string: 4.50 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
Edited Jun 12, 2017 by Sergiu Deitsch
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: vtk/vtk#17063