This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM625:GUI 库重新编译后 OpenGLES/Vulkan 性能下降

Guru**** 2538950 points
Other Parts Discussed in Thread: AM625, AM62P

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1307716/am625-opengles-vulkan-perfomance-drop-after-gui-libraries-recompilation

器件型号:AM625
主题中讨论的其他器件: AM62P

您好、TI!

在实际 AM625电路板上重新安装 Mesa+Weston 后(所有其他插件也使用 LLVM/Clang 安装)、观察到 OpenGLES/Vulkan 下降的呈现性能从30 fps 下降到1 fps。 一切都运行良好,包括 GTK,XWayland 下的 X 程序,但3D 非常慢。 Gstream 视频性能也下降了2倍。 只是不知道如何解决这个条件。 Mesa 渲染器也缺乏 zink_Dri.so 库。

版本:

处理器 SDK -  09.01.00.08

Mesa - 23.3
韦斯顿- 10.0
Wayland - 1.22
LLVM/Clang - 16.0
锈- 1.71
PowerVR SDK - 2023.2
GTK2/GTK3/GTK4 -最新版本
Xserver+库-最新
perfetto profiler -未安装
Glew/FreeGlut -最新信息
圣诞快乐和新年快乐
阿列克谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我已经分配了您的主题。 请预计因节假日而延迟回复。 如果在1月的第一周内没有得到回复、请随意 ping 该主题。

    此致、

    尼克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您进行了哪些更改、因为我们未正式支持 Vulkan 和 X。您是否通过标准 OpenGLES 测试观察到性能下降?   由于 GPU 堆栈中有许多层、因此了解堆栈设置会有所帮助。 我不确定您从标准 SDK 做出了哪些更改以及它对性能的影响。  

    此致、
    克鲁纳尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Krunal:

    MESA 实用程序"glxgeares"在 OpenGL 测试上显示150 fps。 我仍在调查条件...

    当然、进行了大量修改以使系统支持所有开发人员功能(包括文档支持)。

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    "glxgeares"基于 X Windows 生态系统,因此其中的 OpenGLES 通过 X-Server,这是不同的呈现环境。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您是否 也启用了 Zink?  

    此致、
    克鲁纳尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Krunal:

    某些程序如 QT5和 GCC (支持其他语言)需要在该平台上编译几天。 我还没有准备好回答这个问题。

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    当 Zink 安装后,我会得到什么:

    Successfully connected the Wayland display
    Successfully retrieved the Wayland registry
    Successfully retrieved the Wayland compositor
    Successfully create the Wayland surface
    Successfully create the Wayland shell surface
    Host library 'libEGL.so' loaded
    EGL Bindings: Successfully loaded library libEGL.so
    
    WARNING: Some incorrect rendering might occur because the selected Vulkan device (PowerVR A-Series AXE-1-16M) doesn't support base Zink requirements: feats.features.fillModeNonSolid have_EXT_line_rasterization
    Trying to create context for all configs.
    Failed to create context for any configs. Tried 0 configs.
    OpenGL ES 3.1 NOT supported. Trying lower version...
    Trying to create context for all configs.
    Failed to create context for any configs. Tried 0 configs.
    OpenGL ES 3.0 NOT supported. Trying lower version...
    Trying to create context for all configs.
    EGL context creation: EGL_KHR_create_context supported
    

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、我 对您的设置很好奇。 一般而言、我们尚未测试 Zink、我只是想了解您当前使用 X 的设置。到目前为止、我们的开发人员仅使用 IMG 专有驱动程序测试原生 GLES 堆栈。 开源驱动程序完成后、目标是启用 Zink 并测试它的功能。  

    此致、
    克鲁纳尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我还没有使用任何包管理器。 ( 许多 程序需要一些特定的配置和与其他程序相关的关系)。 所有重新编译 都是电路板上的原生编译。 希望一切正常、我会切换到封装管理器生态系统以节省 时间。  当前的 TI SDK 缺少一些 pkgconfig 文件和一些头文件、因此需要重新编译。 甚至 GCC 也需要针对特定程序提供 Fortran 支持。 不是每个程序都支持 wayland,所以我添加了 X11。

    希望我能理解如何恢复专有 GPU 驱动程序的链接。

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢大家所讲的背景。 让我了解您的最新发现。

    此致、
    克鲁纳尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    通过安装最新 Mesa 代码的梅萨-琥珀分公司解决基本问题。  

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我当前的 X 环境配置设置是:

    export GDK_BACKEND=wayland
    export XDG_RUNTIME_DIR=/run/user/1000
    export WAYLAND_DISPLAY=wayland-1
    export DISPLAY=:1

    每次启动 bash 会话时都应初始化这些变量。 x 程序使用连接到 SDK 板的鼠标和键盘有效地从 Weston 桌面开始(直接控制 UI)。 也应该在 Weston 设置中启用 XWayland 安装模块。

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我的当前状况是:

    am62xx-evm:~$ glxinfo -B
    name of display: :0
    MESA-LOADER: failed to open zink: /usr/lib/dri/zink_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/dri, suffix _dri)
    failed to load driver: zink
    display: :0  screen: 0
    direct rendering: Yes
    Extended renderer info (GLX_MESA_query_renderer):
        Vendor: Mesa (0xffffffff)
        Device: llvmpipe (LLVM 17.0.6, 128 bits) (0xffffffff)
        Version: 24.0.0
        Accelerated: no
        Video memory: 1925MB
        Unified memory: yes
        Preferred profile: core (0x1)
        Max core profile version: 4.5
        Max compat profile version: 4.5
        Max GLES1 profile version: 1.1
        Max GLES[23] profile version: 3.2
    Memory info (GL_ATI_meminfo):
        VBO free memory - total: 0 MB, largest block: 0 MB
        VBO free aux. memory - total: 1632 MB, largest block: 1632 MB
        Texture free memory - total: 0 MB, largest block: 0 MB
        Texture free aux. memory - total: 1632 MB, largest block: 1632 MB
        Renderbuffer free memory - total: 0 MB, largest block: 0 MB
        Renderbuffer free aux. memory - total: 1632 MB, largest block: 1632 MB
    Memory info (GL_NVX_gpu_memory_info):
        Dedicated video memory: 881478 MB
        Total available memory: 883403 MB
        Currently available dedicated video memory: 0 MB
    OpenGL vendor string: Mesa
    OpenGL renderer string: llvmpipe (LLVM 17.0.6, 128 bits)
    OpenGL core profile version string: 4.5 (Core Profile) Mesa 24.0.0
    OpenGL core profile shading language version string: 4.50
    OpenGL core profile context flags: (none)
    OpenGL core profile profile mask: core profile
    
    OpenGL version string: 4.5 (Compatibility Profile) Mesa 24.0.0
    OpenGL shading language version string: 4.50
    OpenGL context flags: (none)
    OpenGL profile mask: compatibility profile
    
    OpenGL ES profile version string: OpenGL ES 3.2 Mesa 24.0.0
    OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
    
    

    如您所见、目前还没有针对 GLx 图形堆栈的硬件加速。

    我希望图形层将在下一个处理器 SDK 版本之前支持 GLx XWayland。

    此致、

    阿列克谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的  Alexey:

    目前、我们还没有计划在当前和下一个 PSDK 版本中支持 GLx。 迁移到开放源代码驱动程序后、由于启用了 Zink、目标是让 X/GLX 正常工作。  

    此致、
    克鲁纳尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Krunal:

    感谢您的回复。

    我看到过 这样的信息:基于 IMG bxs+ 4-64-MC1 (作为 AM62P)的 TI 产品本来就支持 OpenGL 堆栈。 这是否意味着此类产品将 在更短的时间内获得 GLX 支持?

    谢谢...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哦、抱歉、我的错。 它是关于 OpenCL。 所以,还没有这方面的计划。 至少有 DirectFB 的解决方案,我还没有尝试过。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    "libexoxy"库在干净的 GLES2/3环境中使用时完全不受支持、因为它始终需要 GL 初始化函数、GLES 中不支持该函数。 但此库是 GNOME 桌面环境中的一个关键组件。 嵌入式 Linux 解决方案推出后、这个问题没有人解决、这一点很令人遗憾。

    此致...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是否没有社区支持?

    此致、
    克鲁纳尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    实际上,有一个 GNOME Mutter 窗口管理器,它是 GNOME UI 的真正基本框架,声称完全支持 OpenGLES 环境。 但就目前而言,在实践中,它并不是完全符合  OpenGLES+GStreamer。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    GNOME 平台的主要优点是 UI 抽象层,这使跨平台应用程序更容易,当然,代价是内存消耗较高。