.. include:: /keyword.rst ========== |i350-EVK| ========== .. contents:: General :local: :depth: 1 -------------------------------- This chapter describes platform-dependent information and instructions. For example, you will get different benchmark results on different platforms. For general usage of GPU, such as command to query GPU hardware information, command to find EGL, GLES support details and so on, please refer to :doc:`GPU ` chapter. .. note:: After IoT Yocto |CURR-YOCTO-VERSION|, you have to flash image with GPU device tree overlay (``gpu-mali.dtbo``) to enable GPU support on |i350-EVK-REF-BOARD|. .. prompt:: bash # auto # genio-flash --load-dtbo gpu-mali.dtbo .. note:: Command operations and test results presented in this chapter are based on the IoT Yocto |CURR-YOCTO-VERSION| and |i350-EVK-REF-BOARD|. -------------------------------- GPU Hardware Specification ========================== Please refer to the :doc:`MT8365 (Genio 350) ` to find GPU specifications. -------------------------------- .. _glmark2-benchmark-g350: GPU Benchmark ============= |IOT-YOCTO| provides `glmark2 (2021.12) `_ which is an OpenGL 2.0 and ES 2.0 benchmark. It offers a suite of scenes that can be used to measure many aspects of OpenGL (ES) 2.0 performance. Please refer to :ref:`Launch glmark2-es2-wayland ` and :ref:`Launch glmark2-es2-drm ` to run the benchmark. .. note:: - For ``glmark2-es2-wayland``: By default, it renders various scenes in a output window with the resolution of 800x600, but the complexity of these scenes does not make the GPU to achieve a 100% usage rate. Therefore, we let `glmark2` render to a window with higher resolution: **1920x1080**, performing benchmarks when the GPU usage rate is close to 100%. You can find benchmark score when it finishes. - For ``glmark2-es2-drm``: Default it renders scene at **fullscreen** resolution and fps is **locked to the display refresh rate**. You can find benchmark score when it finishes. .. table:: `glmark2` score of |IOT-YOCTO| |CURR-YOCTO-VERSION|, |i350-EVK-REF-BOARD|. :widths: auto ================================================================================================== ================ ===================================== ======== Command Display Render Resolution Score ================================================================================================== ================ ===================================== ======== ``glmark2-es2-wayland -s 1920x1080`` DSI 1920x1080 247 ``glmark2-es2-drm --visual-config 'red=8:green=8:blue=8:alpha=0:buffer=24:depth=24:stencil=8'`` DSI Full screen (1200x1920) 56 ================================================================================================== ================ ===================================== ======== -------------------------------- .. _performance-mode-g350: Performance Mode ================ Force CPU and GPU to run at maximum frequency. - **CPU at maximum frequency** Command to set performance mode for CPU governor. .. prompt:: bash # auto # echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor - **Disable CPU idle** Command to disable CPU idle. .. prompt:: bash # auto # for j in 3 2 1 0; do for i in 3 2 1 0 ; do echo 1 > /sys/devices/system/cpu/cpu$i/cpuidle/state$j/disable ; done ; done - **GPU at maximum frequency** Please refer to :ref:`Adjust GPU Frequency ` to fix GPU to run at maximum frequency. Or you could just set performance for GPU governor, make the GPU statically to the highest frequency. .. prompt:: bash # auto # echo performance > /sys/devices/platform/soc/13040000.mali/devfreq/13040000.mali/governor - **Disable thermal** .. prompt:: bash # auto # echo disabled > /sys/class/thermal/thermal_zone0/mode -------------------------------- Appendix ======== Weston ****** .. _start-weston-g350: Command to start Weston ^^^^^^^^^^^^^^^^^^^^^^^ .. prompt:: bash # auto # systemctl start weston .. _stop-weston-g350: Command to stop Weston ^^^^^^^^^^^^^^^^^^^^^^ .. prompt:: bash # auto # systemctl stop weston