AnsweredAssumed Answered

2x performance decrease in OpenGL when OpenCL interop is enabled on R290x

Question asked by bkloppenborg on Feb 28, 2014
Latest reply on Feb 28, 2014 by bkloppenborg

Greetings,

 

I have an ATI R9 280x GPU running on an Ubuntu 13.10 x86_64 system with the Gnome display manager. I have found my OpenCL/GL application runs much slower on this card than a two year old nVidia GPU. I have tracked it down to a 2x rendering performance decrease that is associated with the creation of an OpenCL/OpenGL interop context. This slow down does not happen on on my other two machines with (3+ year old) nVidia-based GPUs. Unfortunately I don't have any other ATI GPUs on which I can test this so I'm not sure if this is a driver bug or something wrong in my context initialization.

 

Here's the output of my testing code. On my R9 280x system:

 

bkloppenborg@epsilon:~/workspace/simtoi-model-dev/bin$ ./gl-benchmark

Number of Elements: 5100

Running benchmark. Press ESC after a few seconds.

Frames: 72703

Time (s): 6.4246

FPS: 11316.4

bkloppenborg@epsilon:~/workspace/simtoi-model-dev/bin$ ./clgl-benchmark

Number of Elements: 5100

Running benchmark. Press ESC after a few seconds.

Frames: 40024

Time (s): 6.97677

FPS: 5736.75

 

I've repeated the test several times and have obtained similar results each time. For comparision, a much older nVidia card has essentially no difference between the two programs:

 

baron@firefly:~/SOFTWARE/simtoi-model-dev/bin> ./gl-benchmark

Number of Elements: 5100

Running benchmark. Press ESC after a few seconds.

Frames: 9948

Time (s): 9.58127

FPS: 1038.28

baron@firefly:~/SOFTWARE/simtoi-model-dev/bin> ./clgl-benchmark

Number of Elements: 5100

Running benchmark. Press ESC after a few seconds.

Frames: 14243

Time (s): 13.5421

FPS: 1051.76

 

A minimal example can be found here: https://github.com/bkloppenborg/simtoi-model-dev with the tag AMD_Dev_Central_CLGL_Slowdown .


git clone bkloppenborg/simtoi-model-dev · GitHub

cd simtoi-model-dev

git checkout tags/AMD_Dev_Central_CLGL_Slowdown


The remaining building instructions and prerequisites can be found in the README.md file. After the programs are built, run the bin/clgl-benchmark and bin/gl-benchmark programs.


Thank you for your reply.

Brian

Outcomes