• Knut Petersen's avatar
    [PATCH] framebuffer: bit_putcs() optimization for 8x* fonts · c5eb5c1e
    Knut Petersen authored
    This trivial patch gives a performance boost to the framebuffer console
    
    Constructing the bitmaps that are given to the bitblit functions of the
    framebuffer drivers is time consuming.  Here we avoide a call to the slow
    fb_pad_aligned_buffer().  The patch replaces that call with a simple but
    much more efficient bytewise copy.
    
    The kernel spends a significant time at this place if you use 8x* fonts.
    Every pixel displayed on your screen is prepared here.
    
    Some benchmark results:
    
    Displaying a file of 2000 lines with 160 characters each takes 889 ms
    system time using cyblafb on my system (I´m using a 1280x1024 video mode,
    resulting in a 160x64 character console)
    
    Displaying the same file with the enclosed patch applied to 2.6.13 only
    takes 760 ms system time, saving 129 ms or 14.5%.
    
    Font widths other than 8 are not affected.
    
    The advantage and correctness of this patch should be obvious.
    Signed-off-by: default avatarKnut Petersen <Knut_Petersen@t-online.de>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    c5eb5c1e
bitblit.c 10.1 KB