How to launch Khronos OpenGLES conformance tests

1 Introduction[edit]

The purpose of this article is to describe how to build and execute the Khronos OpenGL ES 2.0 Conformance Tests.

These tests are provided by the Khronos Group [1]. They are available as open source from the Khronos CTS GitHub source repo [2].

For a detailed description of the Khronos OpenGL ES2.0 CTS, please refer to the openglcts [3] file.

2 How to install khronos-cts[edit]

2.1 Building khronos-cts[edit]

Execute the following command in the OpenSTLinux build environment:

PC $> bitbake khronos-cts

2.2 Installing kronos-cts on the target board[edit]

Execute the following command in the OpenSTLinux build environment:

PC $> scp tmp*/deploy/deb/*neon*/khronos-cts_opengl-cts-<CTS Release>.deb root@<IPBOARD>:<SomewhereInTheBoard>
Info.png But default dpkg will extract within /home/root/.

This debian package is rather huge. For instance opengl-cts-4.6.0 is around 115MB. If rootfs space is at sake this is better to unpack the debian somewhere else by appending instdir=<SomewhereElse> to the above command

3 How to execute khronos-cts[edit]

3.1 Running test suite[edit]

Execute the following commands on the target board:

Board $> cd /home/root
Board $> ./cts-runner --type=es2 1>results.txt
[     1] EGL: enable default configs for conformance test
Info.png The test execution can take several hours.
Warning.png The *free* system RAM amount required to complete this test suite in around 500MB. Under out of memory occurs.
Khronos gles cts1.png

3.2 Running a single/group of test(s)[edit]

Board $> cd /home/root
Board $> glcts.exe --deqp-case=dEQP-EGL.functional.*

4 Testing verdict example[edit]

Board $>
Test run totals:
  Passed:        13786/13957 (98.8%)
  Failed:        11/13957 (0.1%)
  Not supported: 131/13957 (0.9%)
  Warnings:      29/13957 (0.2%)
219/220 sessions passed, conformance test FAILED

In order to interpret result, please look at "Understanding the result"[4]

Even more there are several tools available to process those test logs[5]

5 References[edit]

Open Graphics Library (See for more details)

Compatibility Test Suite (Android specific) or Clear To Send (in UART context)

Khronos Native Platform Graphics Interface (See for more details)

Random Access Memory