"Full" OpenGL or only OpenGL/ES?

Discussion in 'General Discussion' started by Patola, Oct 22, 2013.

  1. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    Hi, I have seen this video which says "FULL" OpenGL is working on the UDOO.

    First off, I want to say that I tried running OpenGL on mine (Linaro Ubuntu 11.10) but no dice. Tried glxgears (OpenGL), glmark2 (OpenGL), glmark2-es2 (OpenGL-ES) and the same happens every time: screen is frozen, even the mouse cursor stops and I have to restart X or reboot. Happening with anyone else?

    Second, is this real desktop OpenGL, or just mobile OpenGL/ES? If it is indeed OpenGL, which so far I've only seen supported on desktop Intel systems - never seen it on ARM - that would be a very exciting feature that would bring a lot of software to the UDOO. Can someone tell me?

    I have two other systems with i.MX6Q, the GK802 (Ubuntu 12.04.1) and an ESBC-3200 (also Linaro Ubuntu 11.10). Might they have this too?
     
  2. jsherwood1337

    jsherwood1337 New Member

    Joined:
    Jun 11, 2013
    Messages:
    6
    Likes Received:
    0
    Update 22 states that OpenGL and OpenGL/ES is supported by Udoo. OpenGL/ES only for Android. That being said, it could still be in the development phase and did not make it to that image. I do not know as I still have not gotten my bloody board!
     
  3. miousername

    miousername New Member

    Joined:
    Jun 23, 2013
    Messages:
    73
    Likes Received:
    0
    Hi,
    I have successfully tested glmark2, es2gears, glxgears in UDOO!

    Downlad official filesystem from UDOO website and run this benchmark from command line!
    They works very well!
     
  4. josolanes

    josolanes New Member

    Joined:
    Oct 14, 2013
    Messages:
    64
    Likes Received:
    0
    Excellent! I'll be giving it a shot tonight. I didn't even consider trying the GL tests :)
     
  5. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    Hi @miousername,

    What do you mean by 'official filesystem'? I am using the Ubuntu 11.10 image for the UDOO QUAD from here. Is that the one you are using?

    I cannot currently use OpenGL or OpenGL/ES on my UDOO. Every time I try to run the programs, the screen freezes.

    Are you doing anything different or worthwhile mentioning for it to work?
     
  6. miousername

    miousername New Member

    Joined:
    Jun 23, 2013
    Messages:
    73
    Likes Received:
    0
    Yes,
    if you want to check opengl acceleration or opengl es follow this step:

    Insert udoo serial console and from minicom give this command:

    # su ubuntu
    Passwd = ubuntu
    #export DISPLAY=:0
    #/opt/gpulink-x11.sh
    #glxgears


    Or from gnome console:

    $/opt/gpulink-x11.sh
    $glxgears

    let me know if it works!
     
  7. Lifeboat_Jim

    Lifeboat_Jim New Member

    Joined:
    Sep 16, 2013
    Messages:
    399
    Likes Received:
    1
    @ miousername

    Do you have glmark2 running with hardware acceleration or software render?

    Can you post your framerate results pls?
     
  8. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    That's interesting. I examined /opt/gpulink-x11.sh and found one little difference: libEGL.so.1 links to libEGL.so.1.0 instead of libEGL-x11.so. I guess libEGL-x11 is the software rendering library?

    Code:
    ubuntu@udoo:~$ ls -la /usr/lib/libGAL.so /usr/lib/libEGL.so /usr/lib/libEGL.so.1 /usr/lib/libVIVANTE.so
    lrwxrwxrwx 1 root root 22 Aug 27 07:34 /usr/lib/libEGL.so -> /usr/lib/libEGL-x11.so
    lrwxrwxrwx 1 root root 13 Aug 27 07:26 /usr/lib/libEGL.so.1 -> libEGL.so.1.0
    lrwxrwxrwx 1 root root 22 Aug 27 07:34 /usr/lib/libGAL.so -> /usr/lib/libGAL-x11.so
    lrwxrwxrwx 1 root root 26 Aug 27 07:34 /usr/lib/libVIVANTE.so -> /usr/lib/libVIVANTE-x11.so
    
    If I run /opt/gpulink-x11.sh as user ubuntu it obviously does not work because it tries to write under root-only /usr/lib. However, after running as root:

    Code:
    ubuntu@udoo:~$ ls -la /usr/lib/libGAL.so /usr/lib/libEGL.so /usr/lib/libEGL.so.1 /usr/lib/libVIVANTE.so
    lrwxrwxrwx 1 root root 22 Oct 28 01:11 /usr/lib/libEGL.so -> /usr/lib/libEGL-x11.so
    lrwxrwxrwx 1 root root 22 Oct 28 01:11 /usr/lib/libEGL.so.1 -> /usr/lib/libEGL-x11.so
    lrwxrwxrwx 1 root root 22 Oct 28 01:11 /usr/lib/libGAL.so -> /usr/lib/libGAL-x11.so
    lrwxrwxrwx 1 root root 26 Oct 28 01:11 /usr/lib/libVIVANTE.so -> /usr/lib/libVIVANTE-x11.so
    But then, after that, I try to run glxgears and...

    Code:
    ubuntu@udoo:~$ echo $DISPLAY
    :0.0
    ubuntu@udoo:~$ glxgears 
    Nothing on the screen. Again. And as before, the screen just stands still: not even the mouse moves anymore. Only way to undo that is stopping lightdm, kill X if it is still running, then start lightdm again. And when the screen freezes, there is no message on the console, dmesg or /var/log/* that can indicate anything. Not even in Xorg.*.log.

    Note: I am not a newbie. Before trying glxgears, glmark2, glmark2-es2 or any other OpenGL application, I tried running an xterm from that prompt just to see if it appears on the screen, and it appears ok.

    Am I the only one having this problem? Haven't you guy tested your OpenGL / OpenGL ES stuff?
     
  9. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    ...and, if I run glxgears -info, I get some information from the GPU, and only then it locks up again:

    Code:
    ubuntu@udoo:~$ export DISPLAY=:0.0
    ubuntu@udoo:~$ glxgears -info
    GL_RENDERER   = GC2000 Graphics Engine
    GL_VERSION    = 2.1 2.0.1
    GL_VENDOR     = Vivante Corporation
    GL_EXTENSIONS = WGL_ARB_extensions_string WGL_EXT_extensions_string WGL_EXT_swap_control GL_EXT_texture_env_add GL_ARB_multitexture GL_ARB_multisample GL_ARB_texture_env_add GL_ARB_texture_compression GL_ARB_texture_env_combine GL_ARB_depth_texture GL_ARB_window_pos GL_ARB_vertex_buffer_object GL_ARB_shader_objects GL_ARB_vertex_shader GL_ARB_fragment_shader GL_ARB_texture_non_power_of_two GL_ARB_fragment_program_shadow GL_EXT_texture_rectangle GL_ARB_texture_rectangle GL_ARB_pixel_buffer_object GL_EXT_abgr GL_EXT_blend_color GL_EXT_polygon_offset GL_EXT_texture GL_EXT_texture3D GL_EXT_subtexture GL_EXT_histogram GL_EXT_convolution GL_EXT_texture_object GL_SGIS_texture_lod GL_EXT_rescale_normal GL_EXT_vertex_array GL_SGIS_generate_mipmap GL_EXT_draw_range_elements GL_EXT_bgra GL_EXT_separate_specular_color GL_EXT_secondary_color GL_EXT_texture_env_combine GL_EXT_blend_func_separate GL_EXT_texture_lod_bias GL_EXT_texture_filter_anisotropic GL_EXT_texture_compression_s3tc GL_NV_texture_rectangle GL_ATI_vertex_array_object GL_ATI_element_array GL_EXT_stencil_two_side GL_ATI_draw_buffers GL_ATI_texture_env_combine3 GL_ATI_separate_stencil GL_EXT_blend_equation_separate GL_EXT_pixel_buffer_object GL_EXT_color_table GL_SGI_color_matrix GL_EXT_texture_cube_map GL_ARB_imaging GL_EXT_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_texture_array GL_EXT_draw_buffers2 GL_EXT_texture_buffer_object GL_EXT_draw_instanced GL_EXT_timer_query 
     
  10. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    Fun fact: if I run the same command as before as root (having first verified that root is able to create windows and such, of course), I do not even get to the 'info' part:

    Code:
    [6] [root@udoo ~]# export DISPLAY=:0.0
    [6] [root@udoo ~]# xauth merge ~ubuntu/.Xauthority
    [6] [root@udoo ~]# xterm&
    [1] 6114
    [6] [root@udoo ~]# xterm&
    [2] 6121
    [6] [root@udoo ~]# glxgears -info
    And of course, again, no message on dmesg or under /var/log or the console.

    By the way, am I being ignored? Is nobody using or testing OpenGL or OpenGL/ES at all? Is this unimportant?
     
  11. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    Found via strace that it is opening a socket to X (file descriptor 3) but at a certain point this socket is not responding anymore:

    Code:
    socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC, 0) = 3
    connect(3, {sa_family=AF_FILE, path=@"/tmp/.X11-unix/X0"}, 20) = 0
    (...)
    Code:
    poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
    writev(3, [{"\224\5\4\0x\0 \2\0\0\0\0,\1,\1\231\4\3\0\2\0 \2x\0 \2\224\n\2\0"..., 36}, {NULL, 0}, {"", 0}], 3) = 36
    read(3, 0x14bcc, 4096)                  = -1 EAGAIN (Resource temporarily unavailable)
    read(3, 0x14bcc, 4096)                  = -1 EAGAIN (Resource temporarily unavailable)
    gettimeofday({1383037073, 138640}, {120, 0}) = 0
    Any hint to what might be happening? Defective hardware? Doesn't seem so because the GPU is on the same dice as the CPU and other stuff, and the CPU is obviously working. I would hypothesize it might be due to warmth, but I've tried using a fan in front of the device and it did not change anything, and also it is too regular to be caused by this (i.e. I never had seen any OpenGL/ES or OpenGL window at all).
     
  12. waterbury

    waterbury New Member

    Joined:
    Jun 10, 2013
    Messages:
    2
    Likes Received:
    0
    It's important to me. I am having massive issues with OpenGL as well as many others. It is a common topic in the UDOO IRC channel. In fact I got the link to this thread from the channel. No one from the UDOO team seems to be addressing it, though.....
     
  13. Lifeboat_Jim

    Lifeboat_Jim New Member

    Joined:
    Sep 16, 2013
    Messages:
    399
    Likes Received:
    1
    Yep, I'm very keen on openGL but don't have my boards yet so can only encourage others atm to test/resolve.

    Note: 'gears' isn't a very demanding test, indeed it's just a demo and not a benchmark at all. Depending on the wind direction you'll get different results and very high numbers (because it isn't very demanding).

    GLmark2 is the one to use (for those that don't know, 'armel' or 'armhf' is what we use). Stating the obvious but it will fall back to software rendering if it has to, therefore it will *always* (in theory) work but you'll see 2-8fps. Clearly we're expecting a hell of a lot more frames than that per seconds if/when the hardware acceleration works. I believe there is a message posted in the window about 'software rendering' if applicable.

    So if people can run GLmark2 please, and post their results here in reply!
     
  14. miousername

    miousername New Member

    Joined:
    Jun 23, 2013
    Messages:
    73
    Likes Received:
    0
    I run glmark2 glmark2-es20 glxgears es2gears, under ubuntu released from udoo team and under debian wheezy, this image is made by me.



    glmark2/ glmark2-es20 under x11 -> 40 / 45 fps

    glxgears/es2gears under x11 -> 100/ 130 fps

    If you don't believe that I can post some screenshots :mrgreen:
     
  15. g.cubed

    g.cubed New Member

    Joined:
    Oct 29, 2013
    Messages:
    9
    Likes Received:
    0
    miousername,

    I'm trying to install ROS and getting OpenGL errors. When trying to install on the UDOO Linaro 11.1 image:

    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Correcting dependencies... Done
    The following extra packages will be installed:
    libegl1-mesa-dev libgles2-mesa-dev
    The following NEW packages will be installed:
    libegl1-mesa-dev libgles2-mesa-dev
    0 upgraded, 2 newly installed, 0 to remove and 1 not upgraded.
    120 not fully installed or removed.
    Need to get 0 B/32.6 kB of archives.
    After this operation, 385 kB of additional disk space will be used.
    Do you want to continue [Y/n]? y
    perl: warning: Setting locale failed.
    perl: warning: Please check that your locale settings:
    LANGUAGE = "en",
    LC_ALL = (unset),
    LANG = "en_CA.UTF-8"
    are supported and installed on your system.
    perl: warning: Falling back to the standard locale ("C").
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    locale: Cannot set LC_MESSAGES to default locale: No such file or directory
    locale: Cannot set LC_ALL to default locale: No such file or directory
    tar: ./md5sums: time stamp 2011-08-10 20:59:01 is 1313001429.730078847 s in the future
    tar: ./control: time stamp 2011-08-10 20:49:08 is 1313000836.72946718 s in the future
    tar: .: time stamp 2011-08-10 20:59:01 is 1313001429.729225847 s in the future
    (Reading database ... 118305 files and directories currently installed.)
    Unpacking libegl1-mesa-dev (from .../libegl1-mesa-dev_7.11-0ubuntu3_armel.deb) ...
    dpkg: error processing /var/cache/apt/archives/libegl1-mesa-dev_7.11-0ubuntu3_armel.deb (--unpack):
    trying to overwrite '/usr/include/EGL/egl.h', which is also in package gpu-viv-ubt0 13.04.01.oneiric.MX6DQ.4.0.0.RC3
    No apport report written because MaxReports is reached already
    tar: ./md5sums: time stamp 2011-08-10 21:08:28 is 1313001994.083552847 s in the future
    tar: ./control: time stamp 2011-08-10 20:49:56 is 1313000882.082447847 s in the future
    tar: .: time stamp 2011-08-10 21:08:28 is 1313001994.08201118 s in the future
    Unpacking libgles2-mesa-dev (from .../libgles2-mesa-dev_7.11-0ubuntu3_armel.deb) ...
    dpkg: error processing /var/cache/apt/archives/libgles2-mesa-dev_7.11-0ubuntu3_armel.deb (--unpack):
    trying to overwrite '/usr/include/GLES2/gl2ext.h', which is also in package gpu-viv-ubt0 13.04.01.oneiric.MX6DQ.4.0.0.RC3
    No apport report written because MaxReports is reached already
    Errors were encountered while processing:
    /var/cache/apt/archives/libegl1-mesa-dev_7.11-0ubuntu3_armel.deb
    /var/cache/apt/archives/libgles2-mesa-dev_7.11-0ubuntu3_armel.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    Could you help? Thanks
     
  16. mkopack

    mkopack Member

    Joined:
    Jun 14, 2013
    Messages:
    451
    Likes Received:
    21

    Wow, you're getting way higher than me. Did you pull down the source and compile it or something? When I tried just doing glmark2 from the Oct30-2013 Ubuntu image update it ran right away, but I'm seeing scores on my quad that are like 1/2 that for glmark2, and I can't run glmark-es20 or es2gears...
     
  17. miousername

    miousername New Member

    Joined:
    Jun 23, 2013
    Messages:
    73
    Likes Received:
    0
    Hi,

    You can't install these package bacause same accelereted library are already installed with Vivante package. If you install repository libraries mesa-egl you lose graphics acceleration.
    You don't need them.

    Which are the errors with ROS installation?this libraries? The right way in this case is :

    apt-get source ros

    Apt-get build-dep ros

    Change DEBIAN/rules with Vivante dependencies

    Rebuild package and install it
     
  18. Patola

    Patola New Member

    Joined:
    Oct 20, 2013
    Messages:
    20
    Likes Received:
    0
    [SOLVED] "Full" OpenGL or only OpenGL/ES?

    I was able to solve this particular problem. Link to forum post describing solution here.
     
  19. SoundChaos

    SoundChaos New Member

    Joined:
    Oct 29, 2013
    Messages:
    13
    Likes Received:
    0
    Re: [SOLVED] "Full" OpenGL or only OpenGL/ES?

    Just for reference, after installing a fresh ubuntu image with the recommended update applied, my "glmark2-es2" score is a consistent 38 and my "glxgears" is a wild 29-57fps. UDUU Quad with a Sony class 10 - 40MB/s.

    Anyone have scores for a dual, or scores from a quad that are different?
     
  20. mkopack

    mkopack Member

    Joined:
    Jun 14, 2013
    Messages:
    451
    Likes Received:
    21
    Re: [SOLVED] "Full" OpenGL or only OpenGL/ES?

    Nah, that's the ballpark range I get with my Quad.

    Folks running the Debian build are seeing WAY faster than that though... Not sure how! (they're getting like 2x speeds).
     

Share This Page