-
Notifications
You must be signed in to change notification settings - Fork 616
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
background generated in front with headless egl #1900
Comments
I'm not sure what's up with the EGL backend. That's pretty weird. I don't have any experience with EGL so don't think I can help. For PyQt5, you'll need to look at creating a virtual display. You can see how we do that in our own Travis CI testing: Lines 135 to 138 in bb2cd96
The important part are the |
I included the xfvb call as you suggested, but it still did not work. I have ended up making it work by uninstalling my nvidia drivers. However, without those drivers I cannot use pytorch and run the models on the GPU. I tried reinstalling the drivers, but this error (the same that I had previously) appears: Now, whether I set the program to use the GPU or run on CPU only, this same error appears. Do you think there is a way to make pyqt5 work while keeping the nvidia drivers? I have looked at this thread #1503 and tried to create a conda env with pyqt<5, but this generates a lot of conflicts with the requirements that the project has (and apparenly it takes 24h to even identify them) Are there some others workarounds? Some infos: System: |
You ran xvfb but did you also add the |
That was not the problem, as I was running every command with DISPLAY=:99 at the beginning. I tried many things but in the end I was not able to make it work on Debian 9. I created a new instance with Ubuntu 18.04, reinstalled everything, added the NVIDIA drivers and now it works both on cpu/gpu. Everything should be ok now, thank you, I will close the issue. |
Hello,
I am trying to replicate the results of this paper, which created a mesh from a 2d image and then uses vispy to create a camera in order to move around the mesh and make a video. On my local ubuntu machine with PyQt5 backend and by using the method _screenshot() to take the frames from the video, everything works fine.
vispy.sys_info output:
Platform: Linux-5.4.0-42-generic-x86_64-with-debian-buster-sid Python: 3.7.7 (default, Mar 26 2020, 15:48:22) [GCC 7.3.0] NumPy: 1.18.5 Backend: PyQt5 pyqt4: None pyqt5: ('PyQt5', '5.9.2', '5.9.6') pyside: None pyside2: None pyglet: None glfw: None sdl2: None wx: None egl: None osmesa: None _test: None
video output:
However, when I try to do the same on my headless gcloud instance, I can not use PyQt5 because of this:
WARNING: QXcbConnection: Could not connect to display
WARNING: Could not connect to any X display.
By using the egl backend, everything works, except that the background appears to generate in front of the foreground.
sys info:
Platform: Linux-4.9.0-11-amd64-x86_64-with-debian-9.11
Python: 3.7.7 (default, Mar 26 2020, 15:48:22) [GCC 7.3.0]
NumPy: 1.18.5
Backend: egl
pyqt4: None
pyqt5: ('PyQt5', '5.9.2', '5.9.6')
pyside: None
pyside2: None
pyglet: None
glfw: None
sdl2: None
wx: None
egl: EGL 1.5 NVIDIA: OpenGL_ES OpenGL
osmesa: OSMesa
_test: None
GL version: '4.6.0 NVIDIA 418.87.00'
output:
The code is the same in the 2 versions, the background is the only thing that changed.
Could I please have some suggestions on how this happens and how could I solve it?
The text was updated successfully, but these errors were encountered: