RPi hardware acceleration
Daryl Dudey (2012) 55 posts |
I know that RISC OS on the Pi has hardware acceleration in the WIMP, which presumably helps everything feel so smooth, but does the underlying OS_Plot/Draw stuff have it? Does it on any ARM system that RISC OS runs on? I only ask as I’ve written my own line drawing, polygon filling routines etc., which run rather quickly but hit the display memory directly (old school style). I’ve bench-marked this against using the inbuilt OS stuff and it’s several times faster in some cases. However, it feels less portable doing it this way… |
Rick Murray (539) 13840 posts |
I dunno about hardware acceleration, but it’s worth remembering that the OS routines have to be a Jack-of-all-trades. You’ll always be able to do better by writing custom routines to dump data directly into memory, but it’ll only be useful to you if you can absolutely lock down the type of screen mode that your app will use. Otherwise you’ll need something as flexible as the OS routines, and there evaporates any speed benefit… |
Jeffrey Lee (213) 6048 posts |
Yes – the acceleration is built into the VDU layer, so will automatically be used by anything that uses OS_Plot. But, the acceleration is also pretty basic. Currently only rectangle copies and fills can be accelerated. Most machines have some support for acceleration. For the Pi it’s only rectangle copies which are accelerated (we’re just using the generic DMA controller for the acceleration, not the GPU). |