public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?]
@ 2001-03-31  4:11 James Simmons
  2001-04-02 22:44 ` Alan Cox
  0 siblings, 1 reply; 27+ messages in thread
From: James Simmons @ 2001-03-31  4:11 UTC (permalink / raw)
  To: Jamie Lokier; +Cc: Linux Kernel Mailing List, Linux Fbdev development list


>I took to using X, with a single screen size xterm to present the
>illusion of console mode.

Cute trick. I have seen some slow text mode cards. As time goes on it will
get worst since text mode support is not the prime goal anymore. Especially
now that you see graphical BIOS interfaces. Some graphics cards manufactures
have dropped vga text mode support all together. In the next 5 years you
will see the elimination of vga text mode.

>Probably the lack of hardware area copies has something to do with
>this.

Yes this is problem. See my response to Paul about this. The only reason
I'm using MMX for the vesa framebuffer because it has no acceleration. MMX
gives a big boost for genuine intel chips. Other types of MMX are fast but
they don't seemed to be optimized for memory transfers like MMX on intel
chips. I also have regular code that does all kinds of tricks to optimize
data transfers over the bus. It needs more testing but from my comparison
between my voodoo 3 accel engine and this code it ran nearly as fast as
the accelerator at all depths :-)

Another idea for 2.5.X is to implement a font cache in video memory. Even
with AGP it is just to slow to constantly transfer font data over the bus.
Of course this requires a bit of work since we only have so much video
memory but it is worth it for the performance improvement.

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons  [jsimmons@linux-fbdev.org]               ____/|
fbdev/console/gfx developer                             \ o.O|
http://www.linux-fbdev.org                               =(_)=
http://linuxgfx.sourceforge.net                            U
http://linuxconsole.sourceforge.net


^ permalink raw reply	[flat|nested] 27+ messages in thread
* Re: [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?]
@ 2001-04-05  3:04 James Simmons
  2001-04-05 12:03 ` Eric W. Biederman
  0 siblings, 1 reply; 27+ messages in thread
From: James Simmons @ 2001-04-05  3:04 UTC (permalink / raw)
  To: Eric W. Biederman
  Cc: Alan Cox, Linux Fbdev development list, Linux Kernel Mailing List


>>> As long as you are copying in real memory. So the PCI bus or the host
bridge
>>> implementation may be the actual limit.
>>
>> The CyrixIII sits on the same host bridges as the intel processors
>
>I don't know if it applies to this case but one thing I have seen make
>a noticeable difference is whether or not write-combining is enabled.
>If we have only be enabling MTRR's for intel this could do account
>for it.

I think what Geert was trying to point out is does MTRR perform was well
with normal memory over bus to video memory transfers as compared to
normal memory to normal memory transfers. MTTRs might not be optimzed for
these kinds of transfers. I honestly can't say since I haven't tried it. I
brought the MMX book home from works so I'm going to be experimenting
with it this weekend to find out. I really like to compare the MMX
performance to the word aligned transfers over the bus I have going. I had
a bug in my soft accel code that prevented word alignment. Once I fixed
that bug I seen a 10 fold improvement in rendering on the framebuffer.
I'm not kidding about that improvement either :-)

MTTRs enabled always makes a difference. I liek to try it with and
without. I will do some benchmarkings.

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons  [jsimmons@linux-fbdev.org]               ____/|
fbdev/console/gfx developer                             \ o.O|
http://www.linux-fbdev.org                               =(_)=
http://linuxgfx.sourceforge.net                            U
http://linuxconsole.sourceforge.net


^ permalink raw reply	[flat|nested] 27+ messages in thread
* Re: [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?]
@ 2001-04-03  2:04 James Simmons
  0 siblings, 0 replies; 27+ messages in thread
From: James Simmons @ 2001-04-03  2:04 UTC (permalink / raw)
  To: Jamie Lokier; +Cc: Linux Kernel Mailing List, Linux Fbdev development list


>Is it possible that "jump scroll" would provide more performance benefit
>than an accelerated driver anyway?

I wouldn't rule it out. If someone wants to wipe up some code I would have
no problem testing it to see if it is worth it.

>Seeing as you bring up this topic of writing a 9525 driver.  It seems to
>me rather wasteful that you (collectively linux framebuffer authors),
>XFree86 and Berlin are all writing drivers for the same, hugely diverse
>class of hardware, to support more or less the same ops on the hardware.
>
>Isn't possible to pool the development effort of video drivers?  Doesn't
>X require basically the same set of operations as the kernel?  I.e.,
>initialise the card and video mode (usually the very complex part); do
>some rendering ops (usually fairly simple).  Sure, X provides a few more
>kinds of rendering op, but that part of the code is usually much simpler
>and smaller than the initialisation code.

Well the goal of each is very much different. Fbcon was developed to deal
the fact that most modern video hardware doesn't support text but graphical
based modes instead. VGA text is slowly going away. Since are goal is to
emulate a text console we just have to provide basic support to provide
just this. We need to

1) Draw basic text -> Glyph operations.

2) scrolling -> hardware panning or a copy area operation.

3) scroll a region of the screen -> copy area operation.

4) Clear the display or region of display -> fillrect

5) Set color palette.

6) Manage a hardware cursor.

7) Manage the current resolution for VC switching or a mode change vi
   VT_RESIZE or TIOCSWINSZ.

So fbcon is out of necessite. Now X you mean XFree86 which is really a OS
in itself. Its goal to do everything itself so it can run everywhere
know to mankind. As for Berlin I don't know the code so I can't say.
As people are finding out XFree86 doing everything itself is having
issues. A good example is the classic problem of X dying and you have to
reboot the machine. Also when under heavy load and you exit X to the
console you don't get the text mode. Well right now its tough luck and
just reboot your machine. A M$ solution but people have been doing it
so long they don't mind it. I hope to fix those problems for 2.5.X.
As you can see I think the OS should handle the transfer from console mode
to text mode and vice versa. Now for programming the accel engine to do
graphics in userland. Well their is nothing wrong that each does their own
thing. What does matter is their is a GIU independent kernel manager of
the graphics engine state. DRI attempts to handle this.

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons  [jsimmons@linux-fbdev.org]               ____/|
fbdev/console/gfx developer                             \ o.O|
http://www.linux-fbdev.org                               =(_)=
http://linuxgfx.sourceforge.net                            U
http://linuxconsole.sourceforge.net


^ permalink raw reply	[flat|nested] 27+ messages in thread
* Re: [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?]
@ 2001-04-01 14:54 James Simmons
  2001-04-01 21:35 ` Jamie Lokier
  0 siblings, 1 reply; 27+ messages in thread
From: James Simmons @ 2001-04-01 14:54 UTC (permalink / raw)
  To: Jamie Lokier; +Cc: Linux Kernel Mailing List, Linux Fbdev development list


>No, it's the Trident Cyber9525

Sorry. I only have a early driver for trident 9750 and 9850. Their is a
gropup working on trident framebuffers.

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons  [jsimmons@linux-fbdev.org]               ____/|
fbdev/console/gfx developer                             \ o.O|
http://www.linux-fbdev.org                               =(_)=
http://linuxgfx.sourceforge.net                            U
http://linuxconsole.sourceforge.net


^ permalink raw reply	[flat|nested] 27+ messages in thread
* [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?]
@ 2001-03-31  4:15 James Simmons
  0 siblings, 0 replies; 27+ messages in thread
From: James Simmons @ 2001-03-31  4:15 UTC (permalink / raw)
  To: Jamie Lokier; +Cc: Linux Kernel Mailing List, Linux Fbdev development list


>The console driver does not actually use 2.5MB.  Does it make sense to
>use an MTRR for the smaller power-of-two region?

If we implement a font cache in the future it could. Also that extra
memory is used to allow scrollback. We could break up the size of the
region. Have it a*2^n+b*2^(n-1)+c*2^(n-2)+... = 2.5 MB. Isn't math grand
:-)

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons  [jsimmons@linux-fbdev.org]               ____/|
fbdev/console/gfx developer                             \ o.O|
http://www.linux-fbdev.org                               =(_)=
http://linuxgfx.sourceforge.net                            U
http://linuxconsole.sourceforge.net


^ permalink raw reply	[flat|nested] 27+ messages in thread
* Re: [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?]
@ 2001-03-31  3:47 James Simmons
  2001-03-31 14:15 ` Jamie Lokier
  0 siblings, 1 reply; 27+ messages in thread
From: James Simmons @ 2001-03-31  3:47 UTC (permalink / raw)
  To: Jamie Lokier; +Cc: Linux Kernel Mailing List, Linux Fbdev development list


> > You have same toshiba satellite as me, right?
>
> Yes

Is this the NeoMagic chipset?

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons  [jsimmons@linux-fbdev.org]               ____/|
fbdev/console/gfx developer                             \ o.O|
http://www.linux-fbdev.org                               =(_)=
http://linuxgfx.sourceforge.net                            U
http://linuxconsole.sourceforge.net


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2001-04-09 11:41 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-03-31  4:11 [Linux-fbdev-devel] Re: fbcon slowness [was NTP on 2.4.2?] James Simmons
2001-04-02 22:44 ` Alan Cox
2001-04-03  6:23   ` Geert Uytterhoeven
2001-04-03 12:21     ` Alan Cox
2001-04-04  7:50       ` Eric W. Biederman
2001-04-04  8:47         ` Jamie Lokier
  -- strict thread matches above, loose matches on Subject: below --
2001-04-05  3:04 James Simmons
2001-04-05 12:03 ` Eric W. Biederman
2001-04-05 12:12   ` Geert Uytterhoeven
2001-04-05 13:15     ` Maciej W. Rozycki
2001-04-05 18:20       ` Eric W. Biederman
2001-04-06 10:09         ` Ivan Kokshaysky
2001-04-06 13:19           ` Eric W. Biederman
2001-04-06 17:27             ` Maciej W. Rozycki
2001-04-06 18:34               ` Andrea Arcangeli
2001-04-06 19:31                 ` Maciej W. Rozycki
2001-04-06 17:13           ` Maciej W. Rozycki
2001-04-08 18:11             ` Ivan Kokshaysky
2001-04-09 10:02               ` Maciej W. Rozycki
2001-04-09 11:05                 ` Ivan Kokshaysky
2001-04-06 17:07         ` Maciej W. Rozycki
2001-04-03  2:04 James Simmons
2001-04-01 14:54 James Simmons
2001-04-01 21:35 ` Jamie Lokier
2001-03-31  4:15 James Simmons
2001-03-31  3:47 James Simmons
2001-03-31 14:15 ` Jamie Lokier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox