Re: nVidia stuff again
> werewolf:/lib/modules/2.6.11-jam14/kernel/drivers/video# ll > -rw-rw-r-- 1 root root 4402072 Apr 14 23:18 nvidia.ko > werewolf:/usr/X11R6/lib# ll /usr/X11R6/lib/*7174* > -rwxr-xr-x 1 root root 485260 Apr 11 01:12 /usr/X11R6/lib/libGL.so.1.0.7174* > -rwxr-xr-x 1 root root 7626156 Apr 11 01:12 > /usr/X11R6/lib/libGLcore.so.1.0.7174* > > 12 Mb of code is too much for a wrapper that just loads the hardware and > calls a rom ;) What is there ? Runtime loadable microcode ? Specially > optimized code for sending data to 2 pipes on a GeForce2 and 8 on a 6800 ? > Who knows. But sure the driver does _many_ things. this is because they put the entire openGL layer in the kernel (unlike most open source drivers where the gl layer is in userspace and only the hw part is in the kernel) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
On 04.21, Manu Abraham wrote: > Lennart Sorensen wrote: > > On Thu, Apr 21, 2005 at 08:15:02AM -0400, Doug Ledford wrote: > > > >>Ha! That's the whole damn point Dave. Use your head. Just because ATI > >>is getting more complex with their GPU does *not* mean nVidia is. Go > >>back to my original example of the aic7xxx cards. The alternative to > >>their simple hardware design is something like the BusLogic or QLogic > >>cards that are far more complex. Your assuming that because the ATI > >>cards are getting more complex and people are less able to discern their > >>makeup just by reading the specs that the nVidia cards are doing the > >>same, nVidia is telling you otherwise, and you are just blowing that off > >>as though you know more about their cards than they do. Reality is that > >>they *could* be telling the truth and the fact that their card is a more > >>simplistic card than ATIs may be the very reason that ATI has ponied up > >>specs and they haven't. Therefore, you can reliably discern absolutely > >>*zero* information about the nVidia cards from a reference to ATI specs. > > > > > > Certainly possible. Maybe all their real IP is in the code, although if > > that was true, letting opensource peope ahve the programing spec and > > have to do their own drivers wouldn't expose that IP. I have no idea. > > > > Even without opening up the code, but with programming specs there are > many graphics driver guys out there, given the specs out it would not be > too hard to have a decent driver, without the Nvidia IP. In that case > there would be no question of IP violation. > > Or maybe somebody can do a clean room implementation provided Nvidia > agrees to some NDA, and the resultant work is acceptable to Nvidia > provided that it is free of their IP.. Many hardware vendors do resort > to these to get their hardware working properly under Linux, and in some > cases, the Linux driver has proved to be a better driver than their > Windows counterparts, albeit with lesser gimmicks/features. > But the problem is like comparing CISC and RISC processors/code. If you see the CISC assembler you do not see anything. If you look at RISC code you can know many things about how the processor pipelines are organized (you see interleaved float/int ops), you see how much pipelines are there, what they do, and so on. Compare (hypothetically) an ATI engine with 2 matrix-vector-multiply units and an nVidia with 8 dot product units. Perhaps ATI thought about doing matrices in parallel, but never thought on doing rows in parallel. You could know that looking at the code. Or at the programming specs ('load each row of your transform in registers r0..r3 ' ) I do not know how big are the ATI drivers, but looking at the nVidia ones, werewolf:/lib/modules/2.6.11-jam14/kernel/drivers/video# ll -rw-rw-r-- 1 root root 4402072 Apr 14 23:18 nvidia.ko werewolf:/usr/X11R6/lib# ll /usr/X11R6/lib/*7174* -rwxr-xr-x 1 root root 485260 Apr 11 01:12 /usr/X11R6/lib/libGL.so.1.0.7174* -rwxr-xr-x 1 root root 7626156 Apr 11 01:12 /usr/X11R6/lib/libGLcore.so.1.0.7174* 12 Mb of code is too much for a wrapper that just loads the hardware and calls a rom ;) What is there ? Runtime loadable microcode ? Specially optimized code for sending data to 2 pipes on a GeForce2 and 8 on a 6800 ? Who knows. But sure the driver does _many_ things. -- J.A. Magallon \ Software is like sex: werewolf!able!es \ It's better when it's free Mandriva Linux release 2006.0 (Cooker) for i586 Linux 2.6.11-jam14 (gcc 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)) #5 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
Lennart Sorensen wrote: On Thu, Apr 21, 2005 at 08:15:02AM -0400, Doug Ledford wrote: Ha! That's the whole damn point Dave. Use your head. Just because ATI is getting more complex with their GPU does *not* mean nVidia is. Go back to my original example of the aic7xxx cards. The alternative to their simple hardware design is something like the BusLogic or QLogic cards that are far more complex. Your assuming that because the ATI cards are getting more complex and people are less able to discern their makeup just by reading the specs that the nVidia cards are doing the same, nVidia is telling you otherwise, and you are just blowing that off as though you know more about their cards than they do. Reality is that they *could* be telling the truth and the fact that their card is a more simplistic card than ATIs may be the very reason that ATI has ponied up specs and they haven't. Therefore, you can reliably discern absolutely *zero* information about the nVidia cards from a reference to ATI specs. Certainly possible. Maybe all their real IP is in the code, although if that was true, letting opensource peope ahve the programing spec and have to do their own drivers wouldn't expose that IP. I have no idea. Even without opening up the code, but with programming specs there are many graphics driver guys out there, given the specs out it would not be too hard to have a decent driver, without the Nvidia IP. In that case there would be no question of IP violation. Or maybe somebody can do a clean room implementation provided Nvidia agrees to some NDA, and the resultant work is acceptable to Nvidia provided that it is free of their IP.. Many hardware vendors do resort to these to get their hardware working properly under Linux, and in some cases, the Linux driver has proved to be a better driver than their Windows counterparts, albeit with lesser gimmicks/features. Manu - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
On Thu, Apr 21, 2005 at 08:15:02AM -0400, Doug Ledford wrote: > Ha! That's the whole damn point Dave. Use your head. Just because ATI > is getting more complex with their GPU does *not* mean nVidia is. Go > back to my original example of the aic7xxx cards. The alternative to > their simple hardware design is something like the BusLogic or QLogic > cards that are far more complex. Your assuming that because the ATI > cards are getting more complex and people are less able to discern their > makeup just by reading the specs that the nVidia cards are doing the > same, nVidia is telling you otherwise, and you are just blowing that off > as though you know more about their cards than they do. Reality is that > they *could* be telling the truth and the fact that their card is a more > simplistic card than ATIs may be the very reason that ATI has ponied up > specs and they haven't. Therefore, you can reliably discern absolutely > *zero* information about the nVidia cards from a reference to ATI specs. Certainly possible. Maybe all their real IP is in the code, although if that was true, letting opensource peope ahve the programing spec and have to do their own drivers wouldn't expose that IP. I have no idea. > "It's what you know, not what you think you know, that matters." I > don't know why nVidia keeps their specs secret. All I know is what they > tell the world. But what I do know is that it's *possible* they could > be telling the truth, and I have no proof otherwise, regardless of any > suspicions. At least as far as I have understood things, the 3D hardware in the old SGIs was very simple. Lots and lots of multiple and add units which the drivers then used in clever ways to implement fast 3D. nvidia certainly employs many ex-SGI people, so perhaps internally it is still based on that idea, although I doubt it's quite that simple anymore. Len Sorensen - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
> > Ha! That's the whole damn point Dave. Use your head. Just because ATI > is getting more complex with their GPU does *not* mean nVidia is. Go No I rely on things I read from hardware review websites and from the GPU manufacturers to wonder what they are doing, unless putting more transistors onto their chips is making them less complex, both ATI and Nvidia are implementing chips primarily to implement DirectX features (the biggest market), this means they are both heading toward the same thing, with 3D graphics doing things on the GPU vs doing them in the driver is going to be quite noticable you end up doing as much as possible in the hardware, also things like SLI are certainly more complex not less.. ATI are making their chips less "complex" from a programming point of view, the R300 for example has no fixed-function pipelines, for modern apps, the shader language is translated to the GPU by the driver, for older apps using the fixed-function pipeline the driver emulates it on top of the programmable interface.. what this comes down to in the end is that the register interfaces are probably converging, there are only so many ways you can send instructions to a GPU via DMA.. > specs and they haven't. Therefore, you can reliably discern absolutely > *zero* information about the nVidia cards from a reference to ATI specs. But we have some lowlevel knowledge for the Nvidia cards as well.. not detailed but you can pick directions from the presentations they make and marketing literature they release > "It's what you know, not what you think you know, that matters." I > don't know why nVidia keeps their specs secret. All I know is what they > tell the world. But what I do know is that it's *possible* they could > be telling the truth, and I have no proof otherwise, regardless of any > suspicions. Well when previously asked for the specs by other developers the answer before has been IP issues, it may not be totally true now, I think now they just don't want to support open source because they don't believe there is any money in it... ATI didn't release full specs for r200 because they were being nice, the Weather Channel said we won't use your chips unless we have an open source driver and one can only persume proceeded to purchase a lot of chips i.e. it made monetary sense to ATI at the time.. since then it hasn't ... The IP reasons come from the fact that the specs they did release didn't contain any information on how to program a lot of ATI proprietary features.. Also it is peculiar that ATI release 2D programming specs for their newer cards and give support to the 2D ATI driver in X, Nvidia support the 2D NV driver in X, why not the 3D?, Intel won't give out specs for their latest chipsets but they do provide an open source 2D and 3D driver via Tungsten Graphics... I'm thinking of doing up a bit of a presentation for KS on 3D drivers and the technical issues they bring to the kernel (without even mentioning licensing and derived works..) Dave. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
On Thu, 2005-04-21 at 09:12 +1000, Dave Airlie wrote: > > But *that's* the point people keep ignoring: the specs for programming > > the hardware, in some cases, reveals details about the hardware's > > implementation that nVidia does *not* want to release (in addition to > > suggesting their software tricks). Why is it that people *assume* that > > just the programming docs tells a person nothing about the hardware? We > > already know that knowing the registers of a card and what those > > registers do tells you implicit information about the card's design and > > also reveals implicit information about the design of software that > > works with the card. How complex the card's registers and programming > > interface is determines how much you can infer, and the more RISC like > > or simple the card is and the more that is handled in the driver, the > > more obviously the design can be inferred just from the programming > > specs. > > I think the programming specs for a 3D graphics card can tell you > very little about it, the R200 specs are very good but I doubt anyone > would have a clue how to design the internals of the card just from > looking at them, and now that GPUs are getting more like CPUs in terms > of shaders and programming languages the specs are getting less and > less useful to tell what is actually going on Ha! That's the whole damn point Dave. Use your head. Just because ATI is getting more complex with their GPU does *not* mean nVidia is. Go back to my original example of the aic7xxx cards. The alternative to their simple hardware design is something like the BusLogic or QLogic cards that are far more complex. Your assuming that because the ATI cards are getting more complex and people are less able to discern their makeup just by reading the specs that the nVidia cards are doing the same, nVidia is telling you otherwise, and you are just blowing that off as though you know more about their cards than they do. Reality is that they *could* be telling the truth and the fact that their card is a more simplistic card than ATIs may be the very reason that ATI has ponied up specs and they haven't. Therefore, you can reliably discern absolutely *zero* information about the nVidia cards from a reference to ATI specs. > The main reasons they don't like open source is from where I'm > standing, their IP lawyers and probably not being able to do sneaky > hacks in the driver because people can see them.. "It's what you know, not what you think you know, that matters." I don't know why nVidia keeps their specs secret. All I know is what they tell the world. But what I do know is that it's *possible* they could be telling the truth, and I have no proof otherwise, regardless of any suspicions. -- Doug Ledford <[EMAIL PROTECTED]> http://people.redhat.com/dledford - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
Dave Airlie wrote: The main reasons they don't like open source is from where I'm standing, their IP lawyers and probably not being able to do sneaky hacks in the driver because people can see them.. Well . . . if *that* is a reason for disliking open source then the problem is solved. We don't really need the source for their driver with the sneaky hacks exposed. They could keep a proprietary driver with nasty hacks, and release a simplified one (basically the same code with those hacks removed) along with the specs. Open source developers can then add their own hacks if need be. Helge Hafting - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
> But *that's* the point people keep ignoring: the specs for programming > the hardware, in some cases, reveals details about the hardware's > implementation that nVidia does *not* want to release (in addition to > suggesting their software tricks). Why is it that people *assume* that > just the programming docs tells a person nothing about the hardware? We > already know that knowing the registers of a card and what those > registers do tells you implicit information about the card's design and > also reveals implicit information about the design of software that > works with the card. How complex the card's registers and programming > interface is determines how much you can infer, and the more RISC like > or simple the card is and the more that is handled in the driver, the > more obviously the design can be inferred just from the programming > specs. I think the programming specs for a 3D graphics card can tell you very little about it, the R200 specs are very good but I doubt anyone would have a clue how to design the internals of the card just from looking at them, and now that GPUs are getting more like CPUs in terms of shaders and programming languages the specs are getting less and less useful to tell what is actually going on The main reasons they don't like open source is from where I'm standing, their IP lawyers and probably not being able to do sneaky hacks in the driver because people can see them.. Dave. > > The aic7xxx chips are a perfect example of this exact same thing. If > you know how to program the registers on that card, then you know almost > everything about the hardware. It's that simple (and that's a big part > of what makes it very fast, lots of room for driver optimizations and > enhanced feature support). > > -- > Doug Ledford <[EMAIL PROTECTED]> > http://people.redhat.com/dledford > > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to [EMAIL PROTECTED] > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ > - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: nVidia stuff again
On Thu, 2005-04-14 at 16:01 +0200, Helge Hafting wrote: > instead of keeping them secret for no > good reason. But *that's* the point people keep ignoring: the specs for programming the hardware, in some cases, reveals details about the hardware's implementation that nVidia does *not* want to release (in addition to suggesting their software tricks). Why is it that people *assume* that just the programming docs tells a person nothing about the hardware? We already know that knowing the registers of a card and what those registers do tells you implicit information about the card's design and also reveals implicit information about the design of software that works with the card. How complex the card's registers and programming interface is determines how much you can infer, and the more RISC like or simple the card is and the more that is handled in the driver, the more obviously the design can be inferred just from the programming specs. The aic7xxx chips are a perfect example of this exact same thing. If you know how to program the registers on that card, then you know almost everything about the hardware. It's that simple (and that's a big part of what makes it very fast, lots of room for driver optimizations and enhanced feature support). -- Doug Ledford <[EMAIL PROTECTED]> http://people.redhat.com/dledford - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/