Hello everybody,
I ended up here asking my question as I am totally confused about the CPU vs GPU thingy with FPC and Lazarus.
First of all, if I compile a program in Lazarus that uses a form, what hardware component will actually 'draw' it? Will this be the GPU, or the CPU?
Second, does this matter on which OS I run it?
I got stuck with these questions as I am writing a program for the Raspberry Pi and displaying multiple windows and changing images, scrolling text,... isn't going very smooth though it has an amazing GPU (well, for such device ofc). That made me start thinking about what actually 'draws' the forms/images/...
Linux based, it is for example X11, the window manager. So, I guess that X will tell the GPU to draw windows because this are GPU related tasks or isn't it?
But that isn't the case for the Pi, as moving windows goes so laggy that the CPU has to do it! Is this also the case with for example Ubuntu on a normal system?
If it is not the fault of X, than it must be the component and lazarus (FPC) itself. I guess that he makes commands that are executed by the CPU, instead of the CPU for example of moving an image in a form. Is there any way to fix that on a normal system (Ubuntu) and on the Pi?
Sorry for my quite vague question, I just don't really understand the whole system of drawings on a screen from an application. I started looking on the net and found out about 2D and 3D acceleration which is supported by X, so I thought that that should fix the things but than why it doesn't...
Anybody that can help me a hand?
Thanks in advance!