[PATCH v2 4/5] fbdev: Improve performance of cfb_imageblit()

Pekka Paalanen ppaalanen at gmail.com
Tue Feb 22 13:01:11 UTC 2022


On Mon, 21 Feb 2022 20:54:09 +0100
Thomas Zimmermann <tzimmermann at suse.de> wrote:

> Improve the performance of sys_imageblit() by manually unrolling

sys?

> the inner blitting loop and moving some invariants out. The compiler
> failed to do this automatically. This change keeps cfb_imageblit()
> in sync with sys_imagebit().

This is correct here.

> 
> A microbenchmark measures the average number of CPU cycles
> for sys_imageblit() after a stabilizing period of a few minutes

sys?

> (i7-4790, FullHD, simpledrm, kernel with debugging).
> 
> sys_imageblit(), new: 15724 cycles

sys?

> cfb_imageblit(): old: 30566 cycles
> 
> In the optimized case, cfb_imageblit() is now ~2x faster than before.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann at suse.de>
> ---
>  drivers/video/fbdev/core/cfbimgblt.c | 51 +++++++++++++++++++++++-----
>  1 file changed, 42 insertions(+), 9 deletions(-)

Just noticed some confusion in the commit message.


Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220222/bdc4c124/attachment.sig>


More information about the dri-devel mailing list