ARISE-Initiative / robomimic

robomimic: A Modular Framework for Robot Learning from Demonstration
MIT License
592 stars 181 forks source link

EGL Not Initialized Error during Resource Freeing in Robosuite #166

Closed rshkong closed 2 months ago

rshkong commented 2 months ago

This error occurs when I try to run $ python examples/train_bc_rnn.py --debug to make sure robomimic is installed correctly. I'm working on ubuntu 20.04 with a nvidia gpu

Epoch 2 Memory Usage: 1843 MB

Exception ignored in: <function MjRenderContext.__del__ at 0x7fc89016ff70>
Traceback (most recent call last):
  File "/home/shkong/anaconda3/envs/mimicplay/lib/python3.8/site-packages/robosuite/utils/binding_utils.py", line 199, in __del__
    self.gl_ctx.free()
  File "/home/shkong/anaconda3/envs/mimicplay/lib/python3.8/site-packages/robosuite/renderers/context/egl_context.py", line 149, in free
    EGL.eglMakeCurrent(EGL_DISPLAY, EGL.EGL_NO_SURFACE, EGL.EGL_NO_SURFACE, EGL.EGL_NO_CONTEXT)
  File "src/errorchecker.pyx", line 58, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError
OpenGL.raw.EGL._errors.EGLError: EGLError(
    err = EGL_NOT_INITIALIZED,
    baseOperation = eglMakeCurrent,
    cArguments = (
        <OpenGL._opaque.EGLDisplay_pointer object at 0x7fc86dfddac0>,
        <OpenGL._opaque.EGLSurface_pointer object at 0x7fc8905332c0>,
        <OpenGL._opaque.EGLSurface_pointer object at 0x7fc8905332c0>,
        <OpenGL._opaque.EGLContext_pointer object at 0x7fc890533640>,
    ),
    result = 0
)
Exception ignored in: <function EGLGLContext.__del__ at 0x7fc89016fdc0>
Traceback (most recent call last):
  File "/home/shkong/anaconda3/envs/mimicplay/lib/python3.8/site-packages/robosuite/renderers/context/egl_context.py", line 155, in __del__
    self.free()
  File "/home/shkong/anaconda3/envs/mimicplay/lib/python3.8/site-packages/robosuite/renderers/context/egl_context.py", line 149, in free
    EGL.eglMakeCurrent(EGL_DISPLAY, EGL.EGL_NO_SURFACE, EGL.EGL_NO_SURFACE, EGL.EGL_NO_CONTEXT)
  File "src/errorchecker.pyx", line 58, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError
OpenGL.raw.EGL._errors.EGLError: EGLError(
    err = EGL_NOT_INITIALIZED,
    baseOperation = eglMakeCurrent,
    cArguments = (
        <OpenGL._opaque.EGLDisplay_pointer object at 0x7fc86dfddac0>,
        <OpenGL._opaque.EGLSurface_pointer object at 0x7fc8905332c0>,
        <OpenGL._opaque.EGLSurface_pointer object at 0x7fc8905332c0>,
        <OpenGL._opaque.EGLContext_pointer object at 0x7fc890533640>,
    ),
    result = 0
)
amandlek commented 2 months ago

This is an expected issue that is coming from mujoco - it's harmless and can be ignored.