Announcement

Collapse
No announcement yet.

OpenGL 4.3, OpenGL ES 3.0 Specifications Unveiled

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

  • #31
    Originally posted by M1kkko View Post
    That's what I had in mind. The current situation is, "you can use OpenGL, but only with proprietary drivers".
    A standard can be open while still being proprietary - that just means that the standard body does not restrict who may buy a license to implement the standard. An example is Infiniband: anyone at all with the money can license the materials and the right to implement and sell IB HBAs or switches or software.

    "Open standard" is not the same as "open source".

    I don't think OpenGL works like that though: the "open" in the name was mostly just a marketing response to M$' quite closed DirectX & Direct3D product. DirectX/Direct3D ran only on Windows. SGI made it's competing 3D pipeline that it called GL available on any platform from UNIX to MacOS to Windows, so SGI rebranded GL as OpenGL. The point of the "Open" in the name was that SGI GL was being released in such a way that it could be implemented on any hardware and/or OS that someone wanted to use.

    There is no fee to acquire the OpenGL spec and implementation guidelines. Anyone who wants to can just download them and start working. I downloaded them in circa 1998, read them, and decided I had better things to do with the next decade of my life than implement OpenGL.

    The reason MESA has always lagged behind commercial implementations is IMHO because an OpenGL implementation (1) is very complex; (2) is not really well suited for a CPU with only a few cores; (3) is certainly more complex to implement on a MIMD CPU than on a SIMD GPU.

    Comment


    • #32
      Originally posted by hoohoo View Post
      A standard can be open while still being proprietary - that just means that the standard body does not restrict who may buy a license to implement the standard.
      That's an interesting point. So in the same sense, you would probably also consider Microsoft Windows an open OS as long as Microsoft doesn't restrict who may buy a license to use it?

      Originally posted by hoohoo View Post
      The reason MESA has always lagged behind commercial implementations is IMHO because an OpenGL implementation (1) is very complex; (2) is not really well suited for a CPU with only a few cores; (3) is certainly more complex to implement on a MIMD CPU than on a SIMD GPU.
      Were there many multi-core CPUs in 1998?

      Comment


      • #33
        Originally posted by M1kkko View Post
        That's an interesting point. So in the same sense, you would probably also consider Microsoft Windows an open OS as long as Microsoft doesn't restrict who may buy a license to use it?
        No, because Windows is software not a spec. If it was an open specification, wine would be much further along.

        Originally posted by M1kkko View Post
        Were there many multi-core CPUs in 1998?
        No, but there were multi processor systems.

        Comment


        • #34
          Originally posted by hoohoo View Post
          The reason MESA has always lagged behind commercial implementations is IMHO because an OpenGL implementation (1) is very complex; (2) is not really well suited for a CPU with only a few cores; (3) is certainly more complex to implement on a MIMD CPU than on a SIMD GPU.
          Why are you comparing swrast to commercial gpu stacks? Or is there a gl4.2 software renderer I'm not aware of?

          Also, anything being easier on a gpu than on a cpu, you're going to have to back that with some sources.

          Comment


          • #35
            Originally posted by hoohoo View Post
            A standard can be open while still being proprietary - that just means that the standard body does not restrict who may buy a license to implement the standard. An example is Infiniband: anyone at all with the money can license the materials and the right to implement and sell IB HBAs or switches or software.

            "Open standard" is not the same as "open source".

            I don't think OpenGL works like that though: the "open" in the name was mostly just a marketing response to M$' quite closed DirectX & Direct3D product. DirectX/Direct3D ran only on Windows. SGI made it's competing 3D pipeline that it called GL available on any platform from UNIX to MacOS to Windows, so SGI rebranded GL as OpenGL. The point of the "Open" in the name was that SGI GL was being released in such a way that it could be implemented on any hardware and/or OS that someone wanted to use.

            There is no fee to acquire the OpenGL spec and implementation guidelines. Anyone who wants to can just download them and start working. I downloaded them in circa 1998, read them, and decided I had better things to do with the next decade of my life than implement OpenGL.

            The reason MESA has always lagged behind commercial implementations is IMHO because an OpenGL implementation (1) is very complex; (2) is not really well suited for a CPU with only a few cores; (3) is certainly more complex to implement on a MIMD CPU than on a SIMD GPU.
            Plus CPUs are not MIMD!!!

            Comment


            • #36
              Originally posted by curaga View Post
              Why are you comparing swrast to commercial gpu stacks? Or is there a gl4.2 software renderer I'm not aware of?

              Also, anything being easier on a gpu than on a cpu, you're going to have to back that with some sources.
              I say that because rendering a screenful of pixels is inherently embarassingly parallel problem. That kind of problem fits much easier onto an large array of processors (a GPU with dozens or hundreds of cores) than onto a small group of processors (a CPU with 4 or 8 cores).

              I do not claim that managing memory access patterns optimally on a GPU is simple but it's not rocket science either.

              I do claim that rendering same screen on a CPU at same FPS rate as a GPU can do it is very hard - because CPUs in general cannot match the performance of GPUs for this kind of task. To get good OpenGL performance out of a CPU alone is not at all easy.

              Comment


              • #37
                Originally posted by artivision View Post
                Plus CPUs are not MIMD!!!
                A multicore CPU can execute different instructions on different data simultaneously, this is multiple instruction multiple data: MIMD.

                Comment


                • #38
                  Originally posted by M1kkko View Post
                  That's an interesting point. So in the same sense, you would probably also consider Microsoft Windows an open OS as long as Microsoft doesn't restrict who may buy a license to use it?



                  Were there many multi-core CPUs in 1998?
                  If MS sold licenses to *implement* Windows to anyone with the money to buy, then yes Windows would be an open standard.

                  However MS does not offer Windows on those terms, so I do not consider Windows an open standard.

                  Comment


                  • #39
                    Originally posted by curaga View Post
                    Why are you comparing swrast to commercial gpu stacks? Or is there a gl4.2 software renderer I'm not aware of?

                    ...
                    Because I was replying to comments that were also talking about that MESA lags the commercial offerings.

                    Comment


                    • #40
                      Originally posted by hoohoo View Post
                      A multicore CPU can execute different instructions on different data simultaneously, this is multiple instruction multiple data: MIMD.
                      Wrong, MIMD and SIMD are acronyms for Execution-Units not processors. x86 processors are only have SIMD_Vectors (SSE an AVX)

                      Comment

                      Working...
                      X