Closed ilonadem closed 11 months ago
Hello! 👋 Thanks for opening your first issue here! ❤️ We will try to get back to you soon. 🚴🏽♂️
@GuillaumeFavelier it would be good if we could catch the no-OpenGL issue earlier, preferably in PyVista
In the meantime @ilonadem you could try our server environment on the remote machine to see if it works better:
https://github.com/mne-tools/mne-python/blob/main/server_environment.yml
Really what I think you need is some sort of suitably new OpenGL installed on the remote platform. MESA software rendering would work. I'm not sure about the best way to get this. The server_environment might already get it for you, not sure.
I will also suggest that you try:
import mne
mne.viz.set_3d_backend("notebook")
...
To successfully enable the Notebook-specific 3d backend.
As a side note, Google Colab is not yet supported with this backend, you can follow the progress on this in the following thread:
https://github.com/mne-tools/mne-python/issues/8704#issue-781224584.
Thank you for the quick response @larsoner @GuillaumeFavelier!
I have tried
import mne
mne.viz.set_3d_backend("notebook")
which produces the same kernel crash, and already have OpenGL installed in the environment.
In the meantime, I'll go ahead and try using your your server environment.
EDIT Sorry, wrong thread.
You can try the following operations:
sudo apt update && sudo apt upgrade -y
sudo apt install mesa-utils -y
glxinfo | grep "OpenGL version"
Install/Upgrade Mesa Drivers – oibaf/graphics-drivers
sudo add-apt-repository ppa:oibaf/graphics-drivers -y
sudo apt update
sudo apt upgrade -y
glxinfo | grep "OpenGL version"
cd /lib/x86_64-linux-gnu
ls -al | grep libstdc++
cd /home/xxx/anaconda3/lib (I installed the anaconda here)
ls -al | grep libstdc++
If the above files are not the same in both paths: (a)Delete the soft link “libstdc++.so, libstdc++.so.6” and target file “libstdc++.so.6.0.X” in the path “/home/xxx/anaconda3/lib” (b)copy the target file “libstdc++.so.6.0.X” from “/lib/x86_64-linux-gnu” to " /home/xxx/anaconda3/lib":
sudo cp /lib/x86_64-linux-gnu/libstdc++.so.6.0.X /home/xxx/anaconda3/lib
Create the soft links "libstdc++.so " and “libstdc++.so.6” for "libstdc++.so.6.0.X ":
ln -s libstdc++.so.6.0.X libstdc++.so
ln -s libstdc++.so.6.0.X libstdc++.so.6
mne.viz.set_3d_backend("pyvistaqt")
mne.viz.set_3d_options(antialias=False)
False is useful when renderers have problems (such as software MESA renderers).
I think we have improved our error handling and instructions for MESA use nowadays. But let's reopen if things are still unusable for people
MNE version 0.22.1 Python version 3.8.5 Remote jupyter notebook/google colab
Describe the bug
I have been trying to run several of the jupyter tutorials from the mne website in a remote jupyter notebook. Each time I try to run any command that uses mne.viz(), or any other interactive visualization, the kernel restarts and I get the message "the kernel appears to have died"
Steps to Reproduce
For example, I get the "kernel appears to have died" message when I run the following code:
In particular, the kernel crashes on the last line, when there is a call to mne.viz.get_brain_class()
Is there a workaround (maybe specific to remote jupyter notebooks) to stop this crash from happening?
Additional information I have tried running the same code in Google colab as well, which also results in the same problem. I have also tried running other tutorials, which similarly crash whenever I try to run any of the mne.viz() functions
Platform: Remote jupyter notebook (in CoCalc), have also tried in Google Colab Python: 3.8.5 Executable: C:\Users\yxie\Anaconda3\python.exe CPU: Intel(R) Xeon(R) CPU Model 85 Stepping 7 Memory: 32887760 kB
mne: 0.22.1 numpy: 1.19.5 {blas=D:\a\1\s\numpy\build\openblas_info, lapack=D:\a\1\s\numpy\build\openblas_lapack_info} scipy: 1.5.0 matplotlib: 3.2.2 {backend=module://ipykernel.pylab.backend_inline}
sklearn: 0.0 numba: 0.51.2 nibabel: 3.1.0 nilearn: 0.6.2 dipy: Not found cupy: Not found pandas: 1.2.3 mayavi: Not found pyvista: 0.29.1 vtk: 9.0.1