Registered Member
|
Hi again!
I have some new questions: 1) Krita mostly using software rasterizer, right? I have seen a part of opengl code, but only 6 fragment shaders in "krita/data/shaders/". 2) Do you have plans to make more use of the modern GPU (such as opengl and opencl implementation)? Thanks! :) |
KDE Developer
|
1) All internal calculation are currently done on the CPU. OpenGL is used for the OpenGL canvas. The shader programs are used for the preview of the gradient tool when the OpenGL canvas is used.
2) There is currently some work underway on a OpenGL 2 ES canvas. I have also done some experiments to use OpenCL for brushes, but that still in very early stages. |
Registered Member
|
1) OpenGL using for display/preview results only? Am I correct, you just calculates on CPU and updates gl textures?
2) If I'm not mistaken, it is possible to transfer all the calculations to the GPU, right? OpenGL have 8, 16 and 32 bit float and integer formats and OpenCL can access to this textures. I have not programming OpenCL yet, only OpenGL, but I red CL specs a bit. I think in the right way or is it too optimistic? :) |
KDE Developer
|
1) Right
2) There are limitations. Lots of operations are not very complex, so the memory transfer overhead could be bigger than the advantages of the GPU. Beside that there are some things that are not suited for the GPU like generating random numbers. |
Registered Member
|
But what will be transferred if textures will be stored on GPU? OpenCL kernels? Somthing else? By the way, I think we have about 1-2 GB per second cpu->gpu transfer.
I saw random number generators for gpu on web. Btw, this stuff need more research. |
KDE Developer
|
Random numbers are not that important just used in some cases.
OpenCL kernels are not a problem, I think. They are uploaded before doing an operation. The Gimp developers have posted some results of their OpenCL code: http://meudepositodeideias.wordpress.co ... up-to-now/ It always depends on how much can be done one the GPU and when you need to send and received data from the GPU. |
Registered users: abc72656, Bing [Bot], daret, Google [Bot], lockheed, Sogou [Bot], Yahoo [Bot]