Whats holding ~100% D GUI back?

Gregor Mückl gregormueckl at gmx.de
Fri Nov 29 16:46:46 UTC 2019


On Friday, 29 November 2019 at 15:56:19 UTC, Jab wrote:
> On Friday, 29 November 2019 at 10:12:32 UTC, Ethan wrote:
>> On Friday, 29 November 2019 at 05:16:08 UTC, Jab wrote:
>>> IIRC GPUs are limited in what they can do in parallel, so if 
>>> you only need to do 1 things for a specific job the rest of 
>>> the GPU isn't really being fully utilized.
>>
>> Yeah, that's not how GPUs work. They have a number of shader 
>> units that execute on outputs in parallel. It used to be an 
>> explicit split between vertex and pixel pipelines in the early 
>> days, where it was very easy to underutilise the vertex 
>> pipeline. But shader units have been unified for a long time. 
>> Queue up a bunch of outputs and the driver and hardware will 
>> schedule it properly.
>
> Wasn't really talking about different processes such as that. 
> You can't run 1000s of different kernels in parallel. In 
> graphical terms it'd be like queuing up a command to draw a 
> single pixel. While that single pixel is drawing, the rest of 
> the stack allocated to that kernel would be idle. It wouldn't 
> be able to be utilized by another kernel.

That's not necessarily true anymore. Some more recent GPU 
architectures have been extended so that different cores can run 
different kernels. I haven't looked at the details because I 
haven't had a need for these features yet, but they're exposed 
and documented.


More information about the Digitalmars-d mailing list