No announcement yet.

Mesa Receives Some OpenGL 3 Love

  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by whizse View Post
    Not using Mesa as a state tracker does seem to be a long term goal:
    I read that differently - no mention of getting rid of Mesa, just getting rid of Mesa's old low-level code (software renderer and pre-Gallium3D driver interfaces).

    This would keep the "GL to hardware layer" portions of Mesa (ie the state tracker) and use Gallium3D as the only hardware layer, so software rendering would use Gallium3D and softpipe/llvmpipe instead of the "classic" software renderer.

    In other words, it would get rid of everything in Mesa that *wasn't* part of the state tracker.


    • #22
      Aha, thanks for the explanation!


      • #23
        Originally posted by bridgman View Post
        I should mention that the emulated GPU on VMWare clients probably has the *best* Gallium3D support right now, but I imagine you want to run on a real GPU not the figment of some developers' imagination
        Is there anybody out there who already uses the Gallium Stack on VMWare? And are there some (working) examples for the python bindings? I'd really like to play with Gallium as well.


        • #24
          One thing that's not obvious is just how big and complicated the hardware *independent* part of an OpenGL driver is. Mesa has almost a million lines of hardware-independent code, and proprietary OpenGL drivers are *much* larger.

          The hardware-dependent part is tiny by comparison - maybe ~20,000 lines for an older GPU and ~50,000 lines for a newer GPU ("classic" mesa HW drivers in both cases), with generally smaller numbers for a Gallium3D driver.

          Even a 20,000 LOC driver is a non-trivial development effort, of course - maybe 6-7 developer-years for "finished" code, or 2-3 developer-years to get to the level of current "production-ish" open source drivers.

          Extrapolate that to a code base the size of Mesa, and you see why Mesa keeps evolving rather than being "replaced". That said, Mesa has been evolving for 17 years now and I imagine that most of the code has been completely replaced at least once during that time.


          • #25

            The Ohloh site includes rough estimates for how long each project would take to rewrite from scratch based primarily on code size. The estimate for Mesa is 291 developer-years :


            Not something you knock together over the weekend