Speed
=====

CyBlaFB is much faster than tridentfb and vesafb. Compare the performance data
for mode 1280x1024-[8,16,32]@61 Hz.

Test 1: Cat a file with 2000 lines of 0 characters.
Test 2: Cat a file with 2000 lines of 80 characters.
Test 3: Cat a file with 2000 lines of 160 characters.

All values show system time use in seconds, kernel 2.6.12 was used for
the measurements. 2.6.13 is a bit slower, 2.6.14 hopefully will include a
patch that speeds up kernel bitblitting a lot ( > 20%).

+-----------+-----------------------------------------------------+
|	    |			not accelerated 		  |
| TRIDENTFB +-----------------+-----------------+-----------------+
| of 2.6.12 |	   8 bpp      |     16 bpp	|     32 bpp	  |
|	    | noypan |	 ypan | noypan |   ypan | noypan |   ypan |
+-----------+--------+--------+--------+--------+--------+--------+
|    Test 1 |	4.31 |	 4.33 |   6.05 |  12.81 |  ----  |  ----  |
|    Test 2 |  67.94 |	 5.44 | 123.16 |  14.79 |  ----  |  ----  |
|    Test 3 | 131.36 |	 6.55 | 240.12 |  16.76 |  ----  |  ----  |
+-----------+--------+--------+--------+--------+--------+--------+
|  Comments |		      | 		| completely bro- |
|	    |		      | 		| ken, monitor	  |
|	    |		      | 		| switches off	  |
+-----------+-----------------+-----------------+-----------------+


+-----------+-----------------------------------------------------+
|	    |			  accelerated			  |
| TRIDENTFB +-----------------+-----------------+-----------------+
| of 2.6.12 |	   8 bpp      |     16 bpp	|     32 bpp	  |
|	    | noypan |	 ypan | noypan |   ypan | noypan |   ypan |
+-----------+--------+--------+--------+--------+--------+--------+
|    Test 1 |  ----  |	----  |  20.62 |   1.22 |  ----  |  ----  |
|    Test 2 |  ----  |	----  |  22.61 |   3.19 |  ----  |  ----  |
|    Test 3 |  ----  |	----  |  24.59 |   5.16 |  ----  |  ----  |
+-----------+--------+--------+--------+--------+--------+--------+
|  Comments | broken, writing | broken, ok only | completely bro- |
|	    | to wrong places | if bgcolor is	| ken, monitor	  |
|	    | on screen + bug | black, bug in	| switches off	  |
|	    | in fillrect()   | fillrect()	|		  |
+-----------+-----------------+-----------------+-----------------+


+-----------+-----------------------------------------------------+
|	    |			not accelerated 		  |
|   VESAFB  +-----------------+-----------------+-----------------+
| of 2.6.12 |	   8 bpp      |     16 bpp	|     32 bpp	  |
|	    | noypan |	 ypan | noypan |   ypan | noypan |   ypan |
+-----------+--------+--------+--------+--------+--------+--------+
|    Test 1 |	4.26 |	 3.76 |   5.99 |   7.23 |  ----  |  ----  |
|    Test 2 |  65.65 |	 4.89 | 120.88 |   9.08 |  ----  |  ----  |
|    Test 3 | 126.91 |	 5.94 | 235.77 |  11.03 |  ----  |  ----  |
+-----------+--------+--------+--------+--------+--------+--------+
|  Comments | vga=0x307       | vga=0x31a	| vga=0x31b not   |
|	    | fh=80kHz	      | fh=80kHz	| supported by	  |
|	    | fv=75kHz	      | fv=75kHz	| video BIOS and  |
|	    |		      | 		| hardware	  |
+-----------+-----------------+-----------------+-----------------+


+-----------+-----------------------------------------------------+
|	    |			  accelerated			  |
|  CYBLAFB  +-----------------+-----------------+-----------------+
|	    |	   8 bpp      |     16 bpp	|     32 bpp	  |
|	    | noypan |	 ypan | noypan |   ypan | noypan |   ypan |
+-----------+--------+--------+--------+--------+--------+--------+
|    Test 1 |	8.02 |	 0.23 |  19.04 |   0.61 |  57.12 |   2.74 |
|    Test 2 |	8.38 |	 0.55 |  19.39 |   0.92 |  57.54 |   3.13 |
|    Test 3 |	8.73 |	 0.86 |  19.74 |   1.24 |  57.95 |   3.51 |
+-----------+--------+--------+--------+--------+--------+--------+
|  Comments |		      | 		|		  |
|	    |		      | 		|		  |
|	    |		      | 		|		  |
|	    |		      | 		|		  |
+-----------+-----------------+-----------------+-----------------+
