On Friday, 28 January 2022, at 3:11 PM, Philip Silva wrote: > I didn't deep-dive yet into the internals of it, but isn't it that when combining the images at the end, that transfer of the initial images with lots of data basically happens only once? It seems to me devdraw can be quite performant on certain use cases. (UIs with basic shapes) Thats true. devdraw prepares its images using memdraw and memlayer. After combining those images we get the results on the display. The moment you do rendering inside your application you have to transfer images using loadimage and flashimage. There is no message inside devdraw which makes it possible to use images from a client process without copying them into the memlayer infrastructure. On Friday, 28 January 2022, at 3:11 PM, Philip Silva wrote: > Also I wonder what kind of functions it should be providing. This intermediate or alternative layer should only add putimage switchbuffers supported by shared memory segments. At least there should be two buffers one foreground and one background buffer directly writeable by the client. One simple way to realize this would be enhancing devdraw with one single protocol which would render a client side image from shared memory (segments). You can quite now create memimages but if you realize the rendering you have to use loadimage and flushimage each time your images change. devdraw is not slow but it can be made faster with only one extra protocol which is missing. Enhancing devdraw this way would also solve the problem but not touching devdraw and offering an intermediate level between the graphics driver and devdraw wouldn't break anything. In the end devdraw also transfers its image to the videocard one way or the other. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T2518f9e4fc10ed03-Mbe750adf3a20ec4a7f7c7b5d Delivery options: https://9fans.topicbox.com/groups/9fans/subscription