Announcement

Collapse
No announcement yet.

LLVMpipe Now Exposes OpenGL 4.2 For GL On CPUs

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

  • #11
    Originally posted by kpedersen View Post
    This obviously makes sense. However I would actually love to see a graph showing where a CPU does start to overtake GPU.

    For example which generation CPU started to yield better performance than the GMA 945? We are surely able to see some crossover now. It would also be useful to see how far away we are from reaching modern GPU performance via a CPU.
    Since for GPUs the "muh singlethred puhfomance" argument never applied, even when CPUs hit a brick wall and Moore's Law died (somewhere in the Sandy/Ivybridge era) GPUs have kept increasing their performance each generation at more or less the same speed.
    This is also valid for iGPUs, where in the GMA era it was complete trash and only ancient or very basic games could run, while in the post Ivybridge era (HD4000 and later) you really could play modern games (not AAA titles obviously) on it.

    So I would expect some kind of parabolic graph where the farther we go in time the bigger the distance from CPU and GPU gets.

    Comment


    • #12
      Originally posted by markg85 View Post
      In total just 5 more extensions to be fully up to date with the latest OpenGL.
      Looking at the number of extensions doesn't give you a good picture. Some extensions require a lot more work than others (as Michael points out).

      Comment


      • #13
        I'm actually kind of excited for software rendering for testing than for a viable execution path. Having CPU-rendered tests with saved, comparable output should be useful in testing and comparing future drivers. Using it in production would either be for really low-resolution targets or for far in the future when hardware improvements make it viable. Or for unusual renderfarm needs.

        Comment


        • #14
          While not an accurate benchmark or LLVMpipe, you can kind of get a sense of how impractical software rendering is with 3D games. This is good for a fallback if the GPU driver isn't running.

          Linus Tech Tips recently tested the performance of the original Crysis game rendering purely on the CPU. The 2007 game in windowed mode can run at what appears to be 10 to 15 FPS on a Threadripper 3990X. So you can imagine any lesser CPU will be worse, along with any newer, graphically intensive workload.

          Comment


          • #15
            GL 4.5 and GLES 3.1 are pretty much complete and close to passing the conformance tests. I have maybe 10 more patches left. As for 4.6/3.2 they need one feature each but they are messy features, anisotropic texture and framebuffer fetching.

            Another use for swrast is CI increasing CI coverage for all of the Mesa GL and virgl is useful for mesa.

            Comment


            • #16
              Originally posted by kpedersen View Post

              This obviously makes sense. However I would actually love to see a graph showing where a CPU does start to overtake GPU.

              For example which generation CPU started to yield better performance than the GMA 945? We are surely able to see some crossover now. It would also be useful to see how far away we are from reaching modern GPU performance via a CPU.
              Anecdotally, I can run simple 2D games in 1440p near 60fps with my 3900X. Considering this is a fairly high resolution, that isn't quite terrible for an OpenGL game.
              Also anecdotally, llvmpipe doesn't seem to be able to parallelize very well. I usually get ~50% CPU usage on that machine. Unless that has to do with SMT?

              Comment


              • #17
                It would be nice to benchmark Tomb Raider on a many-core Threadripper once LLVMpipe is mature enough. An AMD EPYC CPU with twice the memory channels of Threadripper might be better suited for this task, unless there are thread scheduling issues.

                Comment


                • #18
                  It's funny how llvmpipe is conformant with OpenGL 4.4 but not 4.3 because one extension is missing. Well, I suppose it won't be very long until llvmpipe catch OpenGL 4.5 or even 4.6.

                  Zink also achieves new milestones pretty quick. It's two extensions away from OpenGL 3.1. A lot of "modern OpenGL" applications are targeting at least 3.3 so it will be nice when Zink achieve this milestone.

                  Comment


                  • #19
                    Originally posted by AsuMagic View Post

                    Anecdotally, I can run simple 2D games in 1440p near 60fps with my 3900X. Considering this is a fairly high resolution, that isn't quite terrible for an OpenGL game.
                    Also anecdotally, llvmpipe doesn't seem to be able to parallelize very well. I usually get ~50% CPU usage on that machine. Unless that has to do with SMT?
                    This is a bit of an RFC, but looks like a good optimisation for throughput and CPU usage in llvmpipe. It makes the llvmpipe scene pipeline...

                    might help, I can saturate my CPU quite a bit more with that. (not sure it merges clean)

                    Comment


                    • #20
                      Originally posted by dragon321 View Post
                      It's funny how llvmpipe is conformant with OpenGL 4.4 but not 4.3 because one extension is missing. Well, I suppose it won't be very long until llvmpipe catch OpenGL 4.5 or even 4.6.

                      Zink also achieves new milestones pretty quick. It's two extensions away from OpenGL 3.1. A lot of "modern OpenGL" applications are targeting at least 3.3 so it will be nice when Zink achieve this milestone.
                      a) it's not anything conformant, you can only be conformant once you pass the conformance tests and are listed on the official OpenGL site.

                      b) it has implemented all the individual features that we wrapped up into GL 4.4, it doesn't mean it can advertise GL 4.4 until it has all the prior features done as well.

                      It's likely GL 4.3 will be all it advertises once I've completed all the GL 4.5 features until it passes conformance.

                      Dave.

                      Comment

                      Working...
                      X