public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jeff@garzik.org>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Kyle Moffett <mrmacman_g4@mac.com>,
	Manu Abraham <abraham.manu@gmail.com>,
	linux cbon <linuxcbon@yahoo.fr>,
	Helge Hafting <helge.hafting@aitel.hist.no>,
	Valdis.Kletnieks@vt.edu, linux-kernel@vger.kernel.org
Subject: Re: OpenGL-based framebuffer concepts
Date: Tue, 23 May 2006 06:28:40 -0400	[thread overview]
Message-ID: <4472E3D8.9030403@garzik.org> (raw)
In-Reply-To: <1148379089.25255.9.camel@localhost.localdomain>

Alan Cox wrote:
> On Maw, 2006-05-23 at 01:08 -0400, Kyle Moffett wrote:
>> generation graphics system, I'd be interested in ideas on a new or  
>> modified /dev/fbX device that offers native OpenGL rendering  
>> support.  Someone once mentioned OpenGL ES as a possibility as it  
> 
> So for a low end video card you want to put a full software opengl es
> stack into the kernel including the rendering loops which tend to be
> large and slow, or dynamically generated code ?

Indeed, consider the extent of that phrase "dynamically generated code."

To do modern OpenGL (mostly fragment and vertex shaders), you basically 
must have a compiler front-end (C-like language), a code generator (JIT) 
backend for your architecture (x86, x86-64, ...), and a code generator 
backend for your GPU.

Further, as Keith Whitwell and others have rightly pointed out, a modern 
GPU needs such advanced resource management that the X server (or 
whatever driver) essentially becomes a _multi-tasking scheduler_. 
Consider the case of two resource-hungry 3D processes rendering to the 
same X11 screen, and you'll see why a GPU scheduler is needed.

Modern graphics is highly aligned with the Cell processor programming 
model:  shipping specialized binary code elsewhere, to be remotely executed.

OTOH, I think a perfect video driver would be in kernel space, and do

* delivery of GPU commands from userspace to hardware, hopefully via 
zero-copy DMA.  For older cards without a true instruction set, "GPU 
commands" simply means userspace prepares hardware register 
read/write/test commands, and blasts the sequence to hardware at the 
appropriate moment (a la S3 Savage's BCI).
* delivery of bytecode commands (faux GPU commands) from userspace to 
kernel to hardware.  Much like today's ioctls, but much more efficient 
delivery.  Used for mode switching commands, basic monitor management 
commands, and other not-vendor-specific operations that belong in the 
kernel.
* interrupt and DMA handling
* multi-context, multi-thread GPU resource scheduler (2D/3D context 
switching is lumped in here too)
* suspend and resume

and nothing else.

	Jeff



  reply	other threads:[~2006-05-23 10:28 UTC|newest]

Thread overview: 321+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-16 21:41 replacing X Window System ! linux cbon
2006-05-16 21:51 ` Michal Piotrowski
2006-05-16 21:57 ` Måns Rullgård
2006-05-16 23:23   ` Alistair John Strachan
2006-05-16 22:19 ` alan
2006-05-16 22:42   ` Valdis.Kletnieks
2006-05-16 23:05     ` alan
2006-05-17 11:47   ` linux cbon
2006-05-17 12:18     ` Valdis.Kletnieks
2006-05-17 12:39       ` linux cbon
2006-05-17 13:19         ` Valdis.Kletnieks
2006-05-17 14:10           ` Panagiotis Issaris
2006-05-17 14:19             ` Ondrej Zary
2006-05-17 14:23             ` Olivier Galibert
2006-05-17 14:46               ` Bob Copeland
2006-05-17 13:24         ` Lennart Sorensen
2006-05-17 13:46           ` Bob Copeland
2006-05-17 14:01             ` Michal Piotrowski
2006-05-17 13:39         ` Jesper Juhl
2006-05-17 14:53           ` linux cbon
2006-05-17 15:09             ` Valdis.Kletnieks
2006-05-17 15:14               ` Valdis.Kletnieks
2006-05-17 15:30                 ` linux-os (Dick Johnson)
2006-05-17 16:29                   ` Valdis.Kletnieks
2006-05-17 15:53                 ` linux cbon
2006-05-17 16:09                   ` Randy.Dunlap
2006-05-17 16:12                   ` Stas Myasnikov
2006-05-17 15:16             ` Alan Cox
2006-05-17 15:49               ` linux cbon
2006-05-17 16:11                 ` Stas Myasnikov
2006-05-17 17:52             ` Gábor Lénárt
2006-05-17 17:17           ` Felipe Alfaro Solana
2006-05-17 17:33             ` grundig
2006-05-18 15:42               ` Lennart Sorensen
2006-05-18 18:40                 ` grundig
2006-05-18 12:00         ` Helge Hafting
2006-05-18 17:28           ` linux cbon
2006-05-18 18:42             ` Valdis.Kletnieks
2006-05-18 18:52             ` Thierry Vignaud
2006-05-18 19:31               ` linux cbon
2006-05-18 19:37                 ` David Lang
2006-05-18 20:12                 ` Gerhard Mack
2006-05-18 22:22                   ` linux cbon
2006-05-19  9:09                     ` Martin Mares
2006-05-18 20:12                 ` Adrian Bunk
2006-05-18 21:47                 ` Valdis.Kletnieks
2006-05-18 22:03                   ` linux cbon
2006-05-18 22:23                     ` Al Viro
2006-05-21 14:56                 ` Stefan Smietanowski
2006-05-19  9:26             ` Helge Hafting
2006-05-19 11:08               ` Panagiotis Issaris
2006-05-19 13:07                 ` Helge Hafting
2006-05-19 14:34                 ` David Greaves
2006-05-19 14:40                   ` Xavier Bestel
2006-05-19 15:13                     ` linux cbon
2006-05-19 15:18                       ` Xavier Bestel
2006-05-19 22:09                         ` linux cbon
2006-05-19 22:51                           ` Peter Gordon
2006-05-21 20:49                           ` Xavier Bestel
2006-05-20  0:43                         ` Jeff Carr
2006-05-19 15:01                   ` Sander
2006-05-19 22:29                     ` Jan Engelhardt
2006-05-19 22:34                       ` David Lang
2006-05-19 22:20               ` Jan Engelhardt
2006-05-19 22:40               ` linux cbon
2006-05-20  1:02                 ` Adrian Bunk
2006-05-20  6:31                   ` Willy Tarreau
2006-05-20  8:25                 ` jerome lacoste
2006-05-21  6:16                 ` Valdis.Kletnieks
2006-05-21 12:17                   ` linux cbon
2006-05-21  6:38                 ` Manu Abraham
2006-05-23  5:08                   ` OpenGL-based framebuffer concepts Kyle Moffett
2006-05-23  0:48                     ` D. Hazelton
2006-05-23 17:17                       ` Jon Smirl
2006-05-23 22:57                         ` Matthew Garrett
2006-05-23 23:38                           ` Jon Smirl
2006-05-23 23:24                             ` D. Hazelton
2006-05-24  4:21                               ` Jon Smirl
2006-05-24  0:42                                 ` D. Hazelton
2006-05-24  4:57                                   ` Jon Smirl
2006-05-24  1:04                                     ` D. Hazelton
2006-05-24 14:30                                   ` Chase Venters
2006-05-24 13:32                                 ` Paulo Marques
2006-05-24  6:39                             ` Helge Hafting
2006-05-24 13:17                             ` Stefan Seyfried
2006-05-24 22:08                             ` Matthew Garrett
2006-05-24 22:09                               ` D. Hazelton
2006-05-24 22:41                               ` Jon Smirl
2006-05-24  1:50                           ` Jeff Garzik
2006-05-24  7:30                             ` Matthew Garrett
2006-05-24  0:10                         ` Kyle Moffett
2006-05-23 23:27                           ` D. Hazelton
2006-05-24  0:24                           ` Jon Smirl
2006-05-24  7:03                           ` Helge Hafting
2006-05-24 13:55                             ` Alexander E. Patrakov
2006-05-24 14:49                               ` Jon Smirl
2006-05-24 14:56                                 ` Alexander E. Patrakov
2006-05-24 16:15                                   ` Matheus Izvekov
2006-05-24 16:26                                     ` Alexander E. Patrakov
2006-05-24 16:32                                       ` Jon Smirl
2006-05-26  4:57                                         ` Alexander E. Patrakov
2006-05-26  2:09                                           ` D. Hazelton
2006-05-26  7:12                                         ` Helge Hafting
2006-05-24 16:42                                       ` Matheus Izvekov
2006-05-24 17:34                                       ` Xavier Bestel
2006-05-26  7:05                                         ` Helge Hafting
2006-05-26  7:59                                           ` Xavier Bestel
2006-05-26  6:58                                       ` Helge Hafting
2006-05-24 22:03                               ` D. Hazelton
2006-05-26  7:08                               ` Helge Hafting
2006-05-26  8:32                                 ` Alexander E. Patrakov
2006-05-26 10:58                                   ` Helge Hafting
2006-05-26 11:06                                     ` Xavier Bestel
2006-05-24 15:41                             ` Geert Uytterhoeven
2006-05-23 10:11                     ` Alan Cox
2006-05-23 10:28                       ` Jeff Garzik [this message]
2006-05-23 14:10                         ` Kyle Moffett
2006-05-23 14:43                           ` Alan Cox
2006-05-23 15:41                             ` Kyle Moffett
2006-05-23 16:53                               ` Alan Cox
     [not found]                                 ` <9b5164430605231015s40ebcd38had1c3029da8afc7@mail.gmail.com>
2006-05-23 17:21                                   ` Xiong Jiang
2006-05-24 12:47                                     ` Alan Cox
2006-05-23 23:31                                 ` D. Hazelton
2006-05-23 15:52                             ` Rene Rebe
2006-05-23 23:41                         ` D. Hazelton
2006-05-24  4:48                         ` Jon Smirl
2006-05-24  5:24                           ` Jeff Garzik
2006-05-23 23:38                       ` D. Hazelton
2006-05-24  4:08                         ` Dave Airlie
2006-05-24  0:17                           ` D. Hazelton
2006-05-24  5:14                             ` Dave Airlie
2006-05-24  1:30                               ` D. Hazelton
2006-05-24  5:48                                 ` Dave Airlie
2006-05-24  2:11                                   ` D. Hazelton
2006-05-26 17:53                                 ` Pavel Machek
2006-05-27 18:03                                   ` D. Hazelton
2006-05-24 15:27                               ` Jon Smirl
2006-05-24 23:18                                 ` Dave Airlie
2006-05-24 23:56                                   ` Jon Smirl
2006-05-25  0:31                                     ` Dave Airlie
2006-05-25  0:55                                     ` Jeff Garzik
2006-05-25  2:37                                       ` D. Hazelton
2006-05-25  8:44                                         ` Jeff Garzik
2006-05-25 14:04                                           ` Jon Smirl
2006-05-25 15:07                                             ` Jeff Garzik
2006-05-25 15:37                                               ` Jon Smirl
2006-05-25 23:04                                                 ` Dave Airlie
2006-05-25 23:17                                                   ` Jeff Garzik
2006-05-25 23:31                                                     ` Dave Airlie
2006-05-25 23:19                                                 ` Jeff Garzik
2006-05-25 23:48                                                   ` Jon Smirl
2006-05-25 15:57                                               ` Paulo Marques
2006-05-25 18:01                                                 ` Alan Cox
2006-05-26 11:26                               ` Olivier Galibert
2006-05-25 16:13                           ` Greg KH
2006-05-26 17:39                           ` Pavel Machek
2006-05-27 18:01                             ` D. Hazelton
2006-05-28  0:03                               ` Jon Smirl
2006-05-27 22:13                                 ` D. Hazelton
2006-05-28  2:34                                   ` Jon Smirl
2006-05-27 22:45                                     ` D. Hazelton
2006-05-28  3:27                                       ` Jon Smirl
2006-05-28  1:12                                         ` D. Hazelton
2006-05-28 23:13                                           ` Dave Airlie
2006-05-28 23:16                                             ` D. Hazelton
2006-05-29  3:43                                               ` Dave Airlie
2006-05-29  4:05                                               ` Jon Smirl
2006-05-29  0:25                                                 ` D. Hazelton
2006-05-29  4:58                                                   ` Neil Brown
2006-05-29  2:07                                                     ` D. Hazelton
2006-05-29  5:14                                                     ` Dave Airlie
2006-05-29  2:09                                                       ` D. Hazelton
2006-05-29  5:28                                                       ` Neil Brown
2006-05-29  7:14                                                   ` Dave Airlie
2006-05-31 21:42                                               ` Jan Engelhardt
2006-05-31 21:15                                                 ` D. Hazelton
2006-06-01  9:43                                                   ` Jan Engelhardt
2006-06-01 11:51                                                     ` Marko M
2006-06-01 15:54                                                       ` D. Hazelton
2006-06-01 21:39                                                     ` Antonino A. Daplas
2006-05-29  0:59                                             ` Jon Smirl
2006-05-29  1:29                                               ` Daniel Stone
2006-05-29  2:28                                                 ` Jon Smirl
2006-05-30 17:40                                               ` David Lang
2006-05-30 21:53                                                 ` Antonino A. Daplas
2006-05-30 21:55                                                   ` Antonino A. Daplas
2006-05-30 22:13                                                   ` Jon Smirl
2006-06-02  8:36                                                   ` Ondrej Zajicek
2006-06-02  8:58                                                     ` Pavel Machek
2006-06-02 18:49                                                       ` David Lang
2006-06-02 22:01                                                         ` Pavel Machek
2006-06-02 19:57                                                           ` David Lang
2006-06-02 23:25                                                             ` Antonino A. Daplas
2006-06-03  6:32                                                               ` Pavel Machek
2006-06-03  7:05                                                                 ` Antonino A. Daplas
2006-06-03 16:35                                                                   ` Kyle Moffett
2006-06-03 20:55                                                                     ` Antonino A. Daplas
2006-06-02 12:17                                                     ` Antonino A. Daplas
2006-05-30 22:35                                                 ` Ondrej Zajicek
2006-05-30 22:55                                                   ` Jon Smirl
2006-05-31  6:48                                                     ` Martin Mares
2006-05-31  7:13                                                       ` Jon Smirl
2006-05-31  3:25                                                         ` D. Hazelton
2006-05-31  7:19                                                         ` Martin Mares
2006-05-31 12:09                                                       ` Helge Hafting
2006-05-31 13:34                                                       ` Pavel Machek
2006-05-31 13:56                                                         ` Martin Mares
2006-05-30 23:21                                                   ` Antonino A. Daplas
2006-05-31  8:26                                                     ` Ondrej Zajicek
2006-05-31 10:25                                                       ` Marko M
2006-05-31 11:59                                                       ` Antonino A. Daplas
2006-05-31 19:24                                                     ` Geert Uytterhoeven
2006-05-31 19:57                                                       ` Jon Smirl
2006-05-31 20:32                                                         ` Matthew Garrett
2006-05-31 21:23                                                           ` Jon Smirl
2006-06-01  2:21                                                         ` Antonino A. Daplas
2006-05-29 10:23                                             ` Pavel Machek
2006-05-29 10:36                                               ` Dave Airlie
2006-05-29 12:48                                                 ` Pavel Machek
2006-05-29 21:23                                                   ` Jeff Garzik
2006-05-29 21:45                                                     ` Pavel Machek
2006-05-30 17:44                                                       ` David Lang
2006-05-30 20:18                                                         ` Pavel Machek
2006-05-29 22:10                                                     ` Jon Smirl
2006-05-29 22:58                                                       ` D. Hazelton
2006-05-29 22:57                                                     ` D. Hazelton
2006-05-29 23:23                                                   ` Dave Airlie
2006-05-29 23:48                                                     ` Marko M
2006-05-30  1:39                                                       ` Ian Kester-Haney
2006-05-30  2:09                                                         ` Randy.Dunlap
     [not found]                                                           ` <441e43c90605291936t19caa0eat4bd4b699e0ac9202@mail.gmail.com>
2006-05-30  2:37                                                             ` Fwd: " Ian Kester-Haney
2006-05-30 10:49                                                         ` Alexey Dobriyan
2006-05-30 20:24                                                     ` Pavel Machek
2006-05-30 20:56                                                       ` Jon Smirl
2006-05-30 21:15                                                         ` Ian Kester-Haney
2006-05-30 23:01                                                         ` Dave Airlie
2006-05-30 23:27                                                           ` Jon Smirl
2006-05-30 23:14                                                             ` D. Hazelton
2006-05-31  4:02                                                               ` Jon Smirl
2006-05-31  0:11                                                                 ` D. Hazelton
2006-05-31  4:16                                                               ` Jon Smirl
2006-05-31  0:26                                                                 ` D. Hazelton
2006-05-31  4:39                                                                   ` Jon Smirl
2006-05-31  0:45                                                                     ` D. Hazelton
2006-06-01  0:50                                                                     ` Antonino A. Daplas
2006-06-01  1:37                                                                       ` Jon Smirl
2006-06-01  1:56                                                                         ` Antonino A. Daplas
2006-06-01  2:19                                                                           ` Jon Smirl
2006-05-31 22:36                                                                             ` D. Hazelton
2006-06-01  2:49                                                                               ` Jon Smirl
2006-06-01  9:28                                                                     ` Ondrej Zajicek
2006-06-01 16:59                                                                       ` Jon Smirl
2006-06-01 14:59                                                                         ` David Lang
2006-06-01 16:03                                                                           ` D. Hazelton
2006-06-01 20:35                                                                             ` Jon Smirl
2006-06-01 16:47                                                                               ` D. Hazelton
2006-06-01 21:21                                                                                 ` Jon Smirl
2006-06-01 22:22                                                                                   ` D. Hazelton
2006-06-01 21:05                                                                               ` Antonino A. Daplas
2006-06-01 21:23                                                                                 ` Jon Smirl
2006-06-01 21:31                                                                                   ` Antonino A. Daplas
2006-06-01 21:48                                                                                     ` Jon Smirl
2006-06-01 22:21                                                                                       ` Pavel Machek
2006-06-01 23:14                                                                                       ` Antonino A. Daplas
2006-06-01 23:00                                                                                 ` Andrew Morton
2006-06-01 23:39                                                                                   ` Antonino A. Daplas
2006-06-01 23:14                                                                               ` Dave Airlie
2006-06-01 23:38                                                                                 ` Jon Smirl
2006-06-01 23:47                                                                                   ` Dave Airlie
2006-06-02  0:45                                                                                     ` Jon Smirl
2006-06-02  9:05                                                                                       ` Pavel Machek
2006-06-02  9:03                                                                               ` Pavel Machek
2006-06-02  1:15                                                                         ` Dave Airlie
2006-06-02  2:18                                                                           ` Jon Smirl
2006-06-01 22:34                                                                             ` D. Hazelton
2006-06-02  2:58                                                                               ` Jon Smirl
2006-06-01 23:01                                                                                 ` D. Hazelton
2006-06-02  3:16                                                                               ` Jon Smirl
2006-06-02  0:34                                                                                 ` D. Hazelton
2006-06-02  2:45                                                                             ` Dave Airlie
2006-06-02  3:27                                                                               ` Jon Smirl
2006-06-02  4:28                                                                                 ` Jon Smirl
2006-06-02  0:35                                                                                   ` D. Hazelton
2006-06-02  9:00                                                                                 ` Pavel Machek
2006-06-03  3:21                                                                             ` Kyle Moffett
2006-06-03  1:25                                                                               ` D. Hazelton
2006-06-03  5:55                                                                                 ` Jon Smirl
2006-06-03  2:09                                                                                   ` D. Hazelton
2006-06-03  6:31                                                                                     ` Jon Smirl
2006-06-03  2:38                                                                                       ` D. Hazelton
2006-06-03  4:03                                                                               ` Jon Smirl
2006-06-08  7:02                                                                             ` Helge Hafting
2006-06-08  7:40                                                                               ` Daniel Hazelton
2006-06-08  8:30                                                                                 ` Antonino A. Daplas
2006-06-09  2:44                                                                                   ` Daniel Hazelton
2006-06-02  4:34                                                                           ` Ville Syrjälä
2006-06-02  0:36                                                                             ` D. Hazelton
2006-06-02  6:19                                                                             ` Dave Airlie
2006-06-02 17:31                                                                               ` Ville Syrjälä
2006-06-02  1:42                                                                         ` Antonino A. Daplas
2006-05-31  8:08                                                               ` Pavel Machek
2006-05-30 23:38                                                             ` Daniel Stone
2006-05-30 23:38                                                               ` Pavel Machek
2006-05-30 23:55                                                               ` Jon Smirl
2006-05-30 23:38                                                             ` Pavel Machek
2006-05-31  0:00                                                               ` Antonino A. Daplas
2006-05-31  0:47                                                                 ` Jon Smirl
2006-05-31  1:23                                                                   ` Antonino A. Daplas
2006-05-31  2:34                                                                     ` Jon Smirl
2006-05-18 20:27           ` replacing X Window System ! D. Hazelton
2006-05-17 13:20     ` Lennart Sorensen
2006-05-17 18:34   ` Jan Engelhardt
2006-05-16 23:10 ` Felipe Alfaro Solana
2006-05-17  8:46   ` Ondrej Zary
2006-05-17  9:59     ` Carlos Silva
2006-05-17 13:27     ` Lennart Sorensen
2006-05-17 17:37       ` David Schwartz
2006-05-17 17:46         ` alan
2006-05-17 17:56           ` Gábor Lénárt
2006-05-17 17:12     ` Felipe Alfaro Solana
2006-05-19 10:27     ` [OT] " Jan Knutar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4472E3D8.9030403@garzik.org \
    --to=jeff@garzik.org \
    --cc=Valdis.Kletnieks@vt.edu \
    --cc=abraham.manu@gmail.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=helge.hafting@aitel.hist.no \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxcbon@yahoo.fr \
    --cc=mrmacman_g4@mac.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox