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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

Am 22.02.22 um 14:01 schrieb Pekka Paalanen:
On Mon, 21 Feb 2022 20:54:09 +0100
Thomas Zimmermann <tzimmermann@xxxxxxx> 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@xxxxxxx>
---
  drivers/video/fbdev/core/cfbimgblt.c | 51 +++++++++++++++++++++++-----
  1 file changed, 42 insertions(+), 9 deletions(-)

Just noticed some confusion in the commit message.

I copied some of the text from the other commit and I could have sworn I updated it. But apparently not.

Best regards
Thomas



Thanks,
pq

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux