Announcement

Collapse
No announcement yet.

Another Look At The Latest Nouveau Gallium3D Driver

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    Originally posted by bridgman View Post
    If you can find a way to provide an accurate hardware simulation tool that doesn't (a) expose enough of the internal implementation via simple reverse engineering to make it significantly easier for a competitor to duplicate the design or (b) require us to write an "external programming model only" simulator after the fact which would be a lot more work than writing initial driver support we'll look into it. How about that ?
    How about it doesnt matter. I reverse engineer assembly code for PowerPc , hc12 etc etc etc. Its never stopped me from accomplishing my goals becuase a hardware simulation wasn't available.

    but lets be honest, the difference between nvidia and ati hardware isn't that wide, they have already looked at your chips anywyas.

    These are all exscuses. silly ones at that, It would be easier to prove corporate espionage at such a point to. You not protecting your IP. If I had enough time I could figure out how to program for my video card. I just don't have the time to invest into the effort. the first thing I would do is reverse engineer the bios. then I'd start poking at the hardware to test for functions. Likel I'd automate this process, in the span of a month of two I could get 99% of the info I needed about your chip to write my own code. I don't however have the time.

    Truth is, you competitor already handily disassembles your code and you hardware. You do it to.

    copyright your chips and the tech in them. Thats how you protect your IP.

    Comment


    • #62
      Originally posted by Thatguy View Post
      How about it doesnt matter. I reverse engineer assembly code for PowerPc , hc12 etc etc etc. Its never stopped me from accomplishing my goals becuase a hardware simulation wasn't available. ...

      copyright your chips and the tech in them. Thats how you protect your IP.
      You're talking about something completely different -- reverse engineering the programming model. I'm talking about also exposing the internal design, which is the reason internal hardware simulators stay internal.

      If we were concerned about you getting the programming model we expose then wouldn't be *documenting* it or releasing sample code that shows how to use it, would we ?

      Copyrighting the chip design wouldn't stop someone from looking at the internal design then using that information to design their own "similar but different" product. Same thing with patents - you can spend a fortune patenting things but that does nothing to tell you if someone is violating them. Secrecy is still a really effective way to protect technology.

      BTW you mentioned Right to Repair going through Congress -- it didn't actually go through, did it ? My recollection was that a few states had adopted variants but at a federal level it didn't pass.

      Comment


      • #63
        Originally posted by bridgman View Post
        You're talking about something completely different -- reverse engineering the programming model. I'm talking about also exposing the internal design, which is the reason internal hardware simulators stay internal.

        If we were concerned about you getting the programming model we expose then wouldn't be *documenting* it or releasing sample code that shows how to use it, would we ?

        Copyrighting the chip design wouldn't stop someone from looking at the internal design then using that information to design their own "similar but different" product. Same thing with patents - you can spend a fortune patenting things but that does nothing to tell you if someone is violating them. Secrecy is still a really effective way to protect technology.

        BTW you mentioned Right to Repair going through Congress -- it didn't actually go through, did it ? My recollection was that a few states had adopted variants but at a federal level it didn't pass.

        Right to repair is going to go back through in 2012.

        It will likely pass this time. the white house didn't support it last time. several states did adopt similar things. It was a good first step BTW IMHO.

        but the similarity and parrellels are sort of amazing. I need ATI to make a driver for my hardware to work.You get the rest of this analogy which is why I mentioned it. there is even talk of forcing OEM's to disclose ECM source code after the toyota fiasco " which was a logic state issue"

        anyways I could figure out your programming model, same way I figure out how to get a ECM to do what I want. first I start with documenting your programming logic, and build a model from probing the IL. It would of course require sniffing the pci bus " buts thats trivial" given a few hundred iterations I could begin to see how its built.

        Also I could make coppies of your chips easily enough. few high precision lasers to strip the chip down a layer at a time and a eletron microscope to copy the design are all thats required.

        you can't really protect anything you can make. Its just not feasable. thats why the secrecy is stupid. Whats better is just out doing the other guy so he can't catch up and then providing those of us " who are curious enough to tinker" with the information to tinker.

        I frankly don't care about your specific implementation of the programming model. I just want the info on how to make the GPU work.Let us decide how we want to utilize the hardware.

        Comment


        • #64
          Originally posted by Thatguy View Post
          I frankly don't care about your specific implementation of the programming model. I just want the info on how to make the GPU work.Let us decide how we want to utilize the hardware.
          I know that, but you are asking for a hardware simulator which either means we *do* expose the "specific implementation of the programming model" by releasing the internal simulators or we write a new simulator from scratch for each new chip, different from the one we use internally but good enough for you to write 100% functional drivers. Huge effort.

          If all you want is the info on how to make the GPU work then what's wrong with what we are doing now ?

          Comment


          • #65
            Originally posted by bridgman View Post
            I know that, but you are asking for a hardware simulator which either means we *do* expose the "specific implementation of the programming model" by releasing the internal simulators or we write a new simulator from scratch for each new chip, different from the one we use internally but good enough for you to write 100% functional drivers. Huge effort.

            If all you want is the info on how to make the GPU work then what's wrong with what we are doing now ?
            Where the instruction set, register info, probing info for declared functions etc etc etc. ? Not the IL layer.

            how about a complier ? that should keep your hardware safe without a simulator. I have yet to find a GPU compiler, but then I really don't play with x86 platform code at all. More embeeded stuff.

            I did run a projection on how it would take me to reverse engineer your logic in your dirvers and you programming model.

            given a large estimate of supported instructions and several of the same gpu to test with. I figure I could fully reverse engineer your programming model on that gpu family in about 3 months if I worked on it full time.

            Now thats one guy .

            Imagine what your competitor has setup already and the resources they have on tap.

            stop being so secretive, its not protecting anything.

            How do you think they got so good at tessellation ? They took your hardware and software apart and re-engineered it.

            Comment


            • #66
              on second thought why not exspose the info ? I mean, if its all patented and copyrighted you have sufficient protection "likely more" as its easier to make a case your competitor stole info.

              you have to realize eventually some company in china will start making GPU's and they will copy your hardware or someone else, if its open people will flock to it.

              I think the albatross in this room isn't you IP but microsofts IP. We just want some tools. Hell if you let the community it will handle the driver problem on its own.

              As for the issues with UVD, well who cares. holly would can keep its DRM and its crap. I frankly could find other ways to accelerate video without the UVD hardware.

              you have to realize your looking at the argument from the wrong side. Your competitor is far more capable then I am and I am very confident I could reverse engineer your software and hardware "with a great deal of effort" in a realatively short span of time. I know a few guys with way more talent then myself that could likely do it faster but they have day jobs writing code.

              Comment


              • #67
                Originally posted by Thatguy View Post
                Where the instruction set, register info, probing info for declared functions etc etc etc. ? Not the IL layer.
                Instruction set has published documents on amd.com. There's also a useful old version that we archived on x.org because it had some explanations that were missing from later docs.

                Originally posted by Thatguy View Post
                how about a complier ? that should keep your hardware safe without a simulator. I have yet to find a GPU compiler, but then I really don't play with x86 platform code at all. More embeeded stuff.
                The open source driver code we release includes a compiler. It goes from Mesa IR to hardware instructions because that's what you need for a graphics driver, but it has all of the logic you need to generate and parameterize all of the instructions.

                Originally posted by Thatguy View Post
                I did run a projection on how it would take me to reverse engineer your logic in your dirvers and you programming model. given a large estimate of supported instructions and several of the same gpu to test with. I figure I could fully reverse engineer your programming model on that gpu family in about 3 months if I worked on it full time. Now thats one guy . Imagine what your competitor has setup already and the resources they have on tap. stop being so secretive, its not protecting anything.
                ?? You're talking about reverse-engineering the things we document and give you sample code for. That's *supposed* to be easy. Again, we're talking about two completely different things here.

                Comment


                • #68
                  Originally posted by blackiwid View Post
                  if a company would give me money for doing that I would try it, I have a diploma in computer science learned how to use C, c++ and java, python, I also did the biggest part in a opensource game... but I am unemployed because I dont want make .net stuff or java. but I think nobody would pay me for such work, but ok working with low-level c is also not directly my dream of a job. But instead I am trying to get now a stupid job as ruby on rails developer but thats today also not easy to get. At least here in germany ^^
                  For what it's worth, I've heard that if you go into this kind of stuff and do a good job at it, then companies do take notice and usually end up hiring you for quite a bit of money. You just have to take the initiative and get something going on your own, first.

                  Comment


                  • #69
                    Originally posted by bridgman View Post
                    Instruction set has published documents on amd.com. There's also a useful old version that we archived on x.org because it had some explanations that were missing from later docs.

                    what about newer GPU, registers ? capabalitys ?

                    I'm not actively into x86 anything. I work in a different area of MCU's type stuff. Mostly in binary so I am just ribbing you a bit. Kind of how I got my first motorola bluebook.

                    Originally posted by bridgman View Post
                    The open source driver code we release includes a compiler. It goes from Mesa IR to hardware instructions because that's what you need for a graphics driver, but it has all of the logic you need to generate and parameterize all of the instructions.
                    I really don't want to deal with mesa. Is this driver code comparable to the quality of directx code ?Is it portable ? how is the performance of the mesa code ? got link so I can see it ? is it well commented ?

                    Originally posted by bridgman View Post
                    ?? You're talking about reverse-engineering the things we document and give you sample code for. That's *supposed* to be easy. Again, we're talking about two completely different things here.
                    If its so easy why don't we have a portable driver architecture yet ? From what I gather your GPU cores have remained largely the same since r500 "till the 69xx series"

                    So where are these open source drivers ? is there 3d support? how about using shaders for other purposes.

                    I know AMd is trying to help but your also dealing with a buearocracy of people who think that everything you give us compromises your IP. which is utter crap. Maybe you could get feedback from smart developers who could show you a better way to do something.

                    I know how company lines work, I spend my days cracking canbus.


                    got some links to this stuff ??

                    Comment


                    • #70
                      Originally posted by Thatguy View Post
                      what about newer GPU, registers ? capabalitys ?
                      It's there. Why do you think differently, when it's obvious you haven't even looked?

                      I really don't want to deal with mesa. Is this driver code comparable to the quality of directx code ?Is it portable ? how is the performance of the mesa code ? got link so I can see it ? is it well commented ?
                      You seem very needy. Maybe you should just try looking at the code first, before you start complaining?

                      If its so easy why don't we have a portable driver architecture yet ?
                      We do. It's called Gallium.

                      So where are these open source drivers ?
                      http://www.mesa3d.org/

                      is there 3d support?
                      Yes.

                      how about using shaders for other purposes.
                      Sure. Someone is already working on XvMC video decoding routines based on Gallium shaders.

                      Comment


                      • #71
                        Originally posted by smitty3268 View Post
                        It's there. Why do you think differently, when it's obvious you haven't even looked?
                        I looked, I didn't see much useful info, but given the orginizational nature of most opensource projects, this is often expected. the code library is well,messy.


                        Originally posted by smitty3268 View Post
                        You seem very needy. Maybe you should just try looking at the code first, before you start complaining?
                        I might have been ooking for much longer then I let on. I'm not needy, I just want what I paid $200 for. Hows about that.

                        Originally posted by smitty3268 View Post
                        We do. It's called Gallium .
                        I'm not interested in gallium actually.


                        Originally posted by smitty3268 View Post
                        where is the documentation on that site ? I couldn't find it and I spent 15 minutes looking.

                        It should be labbeled

                        ATI GPU Specifications and sample code. Unless my command of english has gotten fiarly poor lately.



                        Originally posted by smitty3268 View Post
                        Sure. Someone is already working on XvMC video decoding routines based on Gallium shaders.
                        I'm not interested in using GPU's for video decoding or for playing video games to be honest.

                        Comment


                        • #72
                          Originally posted by Thatguy View Post
                          what about newer GPU, registers ? capabalitys ?
                          ISA for everything up to Evergreen is published. NI docco is in the works.

                          http://developer.amd.com/gpu/AMDAPPS...s/default.aspx

                          Look under "Related Documentation"

                          Other programming information is posted on x.org, look in :

                          http://www.x.org/docs/AMD/

                          Originally posted by Thatguy View Post
                          I really don't want to deal with mesa. Is this driver code comparable to the quality of directx code ?Is it portable ? how is the performance of the mesa code ? got link so I can see it ? is it well commented ?
                          Mesa *is* the open source 3D driver. If you don't want to deal with it I'm not sure how to help. It supports two different hardware layers -- generally referred to as "classic" and "gallium3D". Here are links to the mesa project, the classic hw drivers, and the gallium3D drivers :

                          mesa project : http://cgit.freedesktop.org/mesa/mesa/

                          classic hw drivers : http://cgit.freedesktop.org/mesa/mes...sa/drivers/dri

                          gallium3d hw drivers : http://cgit.freedesktop.org/mesa/mes...allium/drivers

                          Originally posted by Thatguy View Post
                          If its so easy why don't we have a portable driver architecture yet ? From what I gather your GPU cores have remained largely the same since r500 "till the 69xx series"
                          Not sure what you mean by "portable" - if you mean one set of driver code that runs on a range of hardware generations with generation-specific code where necessary, that exists today.

                          The core changed radically from r5xx to r6xx (HD2xxx/HD3xxx). The 3D programming model was relatively similar between r6xx and r7xx (HD4xxx), then changed again going to Evergreen (HD5xxx) and Northern Islands (HD6xxx). The HD69xx has even more differences in the shader core, using a 4-wide VLIW instead of the 5-wide VLIW on HD24xx through HD68xx.

                          Originally posted by Thatguy View Post
                          So where are these open source drivers ? is there 3d support? how about using shaders for other purposes.
                          Mesa links are above. X driver project is at :

                          http://cgit.freedesktop.org/xorg/driver/xf86-video-ati

                          Kernel driver is in the Linux kernel tree under drivers/gpu/drm. Here's an example link:

                          http://git.kernel.org/?p=linux/kerne...radeon-testing

                          The userspace library code for the kernel driver is at :

                          http://cgit.freedesktop.org/mesa/drm/tree/radeon

                          Comment


                          • #73
                            I might have been ooking for much longer then I let on. I'm not needy, I just want what I paid $200 for. Hows about that.
                            Last time i checked, you paid $200 for a piece of hardware. Not a guarantee that you could look up documentation online. And definitely not that said documentation wouldn't be a part of Mesa, just because "you're not interested in that". In fact, it seems everything AMD is doing, you're "not interested in". How is AMD supposed to figure out exactly what interests you?

                            I'm not interested in gallium actually.
                            See what i mean?

                            I'm not interested in using GPU's for video decoding or for playing video games to be honest.
                            You asked about using shaders for other purposes. I provided you with proof that was already being done. You can do anything you want with these shaders.

                            Comment


                            • #74
                              Originally posted by Thatguy View Post
                              I'm not interested in gallium actually.
                              Yes you are. You just don't know it yet

                              Originally posted by Thatguy View Post
                              where is the documentation on that site ? I couldn't find it and I spent 15 minutes looking. It should be labbeled ATI GPU Specifications and sample code. Unless my command of english has gotten fiarly poor lately.
                              The sample code is added to the living driver projects in the form of initial support for each new generation of hardware.

                              Comment


                              • #75
                                Originally posted by smitty3268 View Post
                                Last time i checked, you paid $200 for a piece of hardware. Not a guarantee that you could look up documentation online. And definitely not that said documentation wouldn't be a part of Mesa, just because "you're not interested in that". In fact, it seems everything AMD is doing, you're "not interested in". How is AMD supposed to figure out exactly what interests you?
                                Exactly, he paid for a finished product. Not a heathkit DIY kit.

                                Comment

                                Working...
                                X