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. Thanks, pq
Attachment:
pgpTIFYisTJsz.pgp
Description: OpenPGP digital signature