[Lazarus] Threads and Libraries (dll and so)

Reimar Grabowski reimgrab at web.de
Wed Feb 5 12:15:25 CET 2014


On Wed, 05 Feb 2014 11:18:28 +0100
Michael Schnell <mschnell at lumino.de> wrote:

> On 02/04/2014 04:02 PM, Reimar Grabowski wrote:
> > You can talk to the GPU from different threads (with a little 
> > overhead) but you actually gain nothing, because of how the drivers work.
> Very wrong, IMHO.
This is not about your opinion. Either you know how it works or you don't.
Talking to the GPU means Direct3D or OpenGL (not any legacy VESA compatible way from the 90s). Both utilize sequential command queues. Feeding the driver from multiple threads does not gain you anything.

> There is a lot to do for the CPU between the user programmer's code 
> calls an Language RTL- (LCL-) or Operating System (Widget Set-, 
> Windowing-System-, X-) API and the point where the driver is called. 
Talk to the driver directly, that's why there are APIs to do so (namely OpenGL and Direct3D). If you need speed utilize your hardware correctly and bypass the LCL, widgetset and X.

R.




More information about the Lazarus mailing list