Opened 14 years ago
Last modified 14 years ago
#363 new enhancement
Evaluate OpenCL support
Reported by: | scheusso | Owned by: | nobody |
---|---|---|---|
Priority: | minor | Milestone: | Version 0.2 Codename: Bellatrix |
Component: | misc | Version: | 0.2.0 |
Keywords: | Cc: | ||
Referenced By: | References: |
Description
OpenCL is a library that allows to relay certain parts of your code to the GPU of your graphics card and computes it there with parallel power. While CUDA as a similar example only runs on NVidia cards, OpenCL is the open-source and hardware independent implementation of such a solution.
Your task is to identify possible candidates of code snippets that can be run in parallel and thus increase the speed of the game on such hardware. Because the graphics rendering cycle is run on the graphics card as well, the code from OpenCL should not get into the way of graphics calculations and slow down the game.
Candidates for parallel computing may be AI or physics.
Also estimate effort and necessary changes in comparison of probable speed up. If it's not worth it, we won't do it.
During my stay here in the US I was working with a Hungarian Computer Scientist (current maintainer of our Arch Linux package) who has programmed a multi-threaded game engine with OpenGL.
So I asked him how useful OpenCL is for a 3D game. His verdict was that GPU computations are only beneficial if it's not fully loaded. Currently, this is mostly the case for our debug builds in windowed mode. However things change when switching to release mode in fullscreen and some FSAA. Since this is basically our target and we like to have some fancy graphics, I believe that using OpenCL has very little effect on performance for us and is therefore not worth investigating further.
If there are no objections, I will close this ticket as 'invalid'.