Announcement

Collapse
No announcement yet.

Blender's "Cycles X" Showing Nice Performance But Dropping OpenCL Support

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

  • #41
    Originally posted by Bobby Bob View Post
    Folks here calling Blender devs 'CUDA Fanboys' is hilarious.
    While most of your post rings true, the latest announcement from the Blender devs is only one drop in the bucket of years of posts and comments from the Blender developers. They only own NVidia GPUs, they've only ever owned NVidia GPUs, and they only code Blender and it's renderers for NVidia GPUs. IDK about "fanboy" as a correct term, but "uninterested in the other companies entirely" is a good way to describe it. Almost all of the work to support anything non-NVidia has come from outside sources. Yes, Blender is Open Source, but it's no wonder the alternatives to the CUDA kernel are so poor when the developers who know the insides of Blender the best refuse to bother themselves to spend a day on them.

    Comment


    • #42
      Originally posted by Daktyl198 View Post

      While most of your post rings true, the latest announcement from the Blender devs is only one drop in the bucket of years of posts and comments from the Blender developers. They only own NVidia GPUs, they've only ever owned NVidia GPUs, and they only code Blender and it's renderers for NVidia GPUs. IDK about "fanboy" as a correct term, but "uninterested in the other companies entirely" is a good way to describe it. Almost all of the work to support anything non-NVidia has come from outside sources. Yes, Blender is Open Source, but it's no wonder the alternatives to the CUDA kernel are so poor when the developers who know the insides of Blender the best refuse to bother themselves to spend a day on them.
      Yes, but how many render engines are still supporting OpenCL into the future? LuxCoreRender's main dev was for quite a while an OpenCL supporter whihc is what LuxCore used. He has since commented that a range of the issues people run into are due to OpenCL drivers with AMD. Adding CUDA + RTX + Optix denoiser happened quite quickly and is now the best user experience when using LuxCore.

      Quote from the LuxCore dev on Cycle X:
      Originally posted by Dade (LuxCore)
      Today, Blender Foundation has announced Cycle X: https://code.blender.org/2021/04/cycles-x

      Aside form the consideration that we were quite right given the list of new features added and old removed: they are introducing a micro-kernel architecture (check, done many years ago), they are dropping tile rendering (check, tile rendering has always been a second grade citizen in LuxCore), volumes stack (check, done many years ago), etc.

      They are also dropping OpenCL support.

      On one side this is an opportunity for us because we are left as the only OpenCL option available (may be, Indigo Render is still using it too ). On other side, I consider this the official announce of OpenCL death.

      R.I.P.

      Comment


      • #43
        Originally posted by Bobby Bob View Post
        Folks here calling Blender devs 'CUDA Fanboys' is hilarious.
        I follow Cycles development for years. It is what it is. Everything they did was focused on CUDA and even when the way they went in CUDA was garbage they still went this way because "CUDA fuck yeah". Now years later they follow pretty much every advise they were given YEARS ago now it is totally awesome from THEM. How surprising... writing smaller kernerls, making things more efficient and making it more sane helps... SURPRISE!!!

        It would have helped OpenCL years ago. Sure. Now it is totally too late. OpenCL is dead. Now everything is back to start. Cycles devs are still "CUDA fuck yeah" and everyone else has to clean up their mess again.

        The only good thing now in comparison to the state years ago is that Blender now has a real-time renderer Eevee that is enough for most settings. So you don't need Cycles in Blender to get good results.

        Comment


        • #44
          Originally posted by tildearrow View Post
          Not a good idea to start on CUDA... Contradicting for an open-source project to support closed-source vendor-locked standard.

          Should have started with Vulkan instead....
          Vulkan and CUDA/OpenCL solve different problems (although understandably there is overlap). Stuff like CUDA/OneAPI/OpenCL is more for compute on GPU (i.e. being able to run generic code on GPU's) where as Vulkan/DirectX/OpenGL are API's designed specifically for rendering.

          OpenCL has been terrible for quite some time so this is hardly surprising, its not surprising they are using CUDA since its really a question of having something of decent quality working vs a piece of crap. Its unfortunate that AMD at the time didn't have the RND or budget to work on it properly (unlike NVidia).

          Maybe they can start afresh with OneAPI.

          Originally posted by Daktyl198 View Post

          While most of your post rings true, the latest announcement from the Blender devs is only one drop in the bucket of years of posts and comments from the Blender developers. They only own NVidia GPUs, they've only ever owned NVidia GPUs, and they only code Blender and it's renderers for NVidia GPUs. IDK about "fanboy" as a correct term, but "uninterested in the other companies entirely" is a good way to describe it. Almost all of the work to support anything non-NVidia has come from outside sources. Yes, Blender is Open Source, but it's no wonder the alternatives to the CUDA kernel are so poor when the developers who know the insides of Blender the best refuse to bother themselves to spend a day on them.
          Blender is an old project and up until recently (3-4 years) AMD didn't really have competitive GPU's if we are talking about the demographic of 3D artists/modelers you really do need a decent GPU so this is hardly surprising.
          Last edited by mdedetrich; 24 April 2021, 04:22 AM.

          Comment


          • #45
            Originally posted by Bobby Bob View Post
            Folks here calling Blender devs 'CUDA Fanboys' is hilarious.
            CUDA fanboys is definitely the wrong terminology, but as others have explained the devs are really only interested in getting things working on CUDA, because that's all they know. And they're not really interested in learning anything else or making accomodations for anything else.

            If others want to try and hack in support for other APIs after the fact then no one is against that, but it's an afterthought at best for the main devs.

            This is not particularly unique to the Blender devs. It's something you see over and over again in a lot of places, because the whole industry has now standardized around CUDA support. OpenCL just wasn't viable for a long time, and CUDA is pretty embedded nowadays.
            Last edited by smitty3268; 24 April 2021, 05:08 AM.

            Comment


            • #46
              Originally posted by StillStuckOnSI View Post

              OneAPI level zero is arguably cleaner than the CUDA C API and has the advantage of working with standard toolchains (as does OneAPI SYCL). The main reason AMD made HIP is to ease migration for CUDA users. I highly doubt they'd design something like it if they weren't trying for that.
              A large portion of oneAPI level zero was used to reproduce what has been done in Vulkan.
              It's more of verbose than clean.

              Comment


              • #47
                At least we don't get a code 43 on nvidia cards anymore... So at least we got that.

                On a more 'clean your own room' note, AMD could have done better on support. Their project is open source. Just another day of the same after nuking their German software division.

                AMD goes for the throat with their cpus. They need to replicate that same zeal on the enterprise compute side, or they are going to be left selling crypto miners and gud enuf but no DLSS/RT gpus to gamer rebels.

                They should be using this time, where nobody can even buy a gpu, to bolster their software side. But, we know that ain't gonna happen.

                Comment


                • #48
                  Originally posted by mdedetrich View Post

                  Vulkan and CUDA/OpenCL solve different problems (although understandably there is overlap). Stuff like CUDA/OneAPI/OpenCL is more for compute on GPU (i.e. being able to run generic code on GPU's) where as Vulkan/DirectX/OpenGL are API's designed specifically for rendering.
                  Did you hear about Vulkan Compute?
                  Vulkan is mostly rendering-oriented, but has a compute API as well.

                  Comment


                  • #49
                    Originally posted by ThoreauHD View Post

                    AMD goes for the throat with their cpus. They need to replicate that same zeal on the enterprise compute side, or they are going to be left selling crypto miners and gud enuf but no DLSS/RT gpus to gamer rebels.

                    They should be using this time, where nobody can even buy a gpu, to bolster their software side. But, we know that ain't gonna happen.
                    They should pick one direction and stick with it, publish a road map and then implement it.. I long ago lost the plot with AMD and I see the software vendors I use having to do way more support on the AMD side than NVidia. That leaves me worried that they may drop support for AMD as just not being worth it and go in a dual Apple/NVidia direction. With the cost of graphics cards and how hard they are to replace due to shortages it is a lot harder to justify taking the risk of AMD if you are trying to get work done.

                    Comment


                    • #50
                      If they had problems maintaining OpenCL, I think this is right decision, although one hard to swallow for a lot of people.

                      Thing is OpenCL has little future if their current backend is buggy. There is already big gap in performance to CUDA in Blender, and even if they bridged it, there is no way to leverage something like Optix/Vulkan Raytracing inside OpenCL, and so far new versions of OpenCL like 3.0 brings little hope for it. I hope vulkan/vulkan compute backend will be comming as it is only thing potentially able to compete with CUDA/Optix. OneAPI I don't think provides any advantages over Vulkan, while Vulkan probably will be able to squize everything possible from GPUs and leverage raytracing hardware as well (heck even Video hardware encoding will be in future there).

                      Vulkan also could be used for viewport which also could be great to use same tech for mutliple things.

                      Comment

                      Working...
                      X