It seems like Brecht and a few other developers have sunk a lot of time into trying to fix CUDA errors and making sure the Cycles engine would work as expected on the GPU, but that leads to the following question.
Is it even worth it for Brecht and others to have the engine working with the GPU or is it just something taking up a lot of time that could’ve been used to expand and optimize the engine instead? Will it pay off in the end or will it just be something constantly throwing problems that have to be fixed for each shading feature introduced?
Should the GPU-side of the engine continue to be developed, or should Cycles be developed as a mainly CPU-based engine?
Most definitely we need the gpu. In addition to what freemind mentioned, its a lot faster on many peoples machines when it is complete. My cpu and gpu were pretty much the bought at the same time at the same price (actually the cpu cost more) but the GPU is about 5 times faster for me. It might be because of cycles but its the same as when I’m using octane or lux. Even though I may get more features in cpu, I would still stick to gpu atleast when in wip. Since a lot of blender revolves around tweaking, The ability to tweak at real time is a real time saver and the faster it is, the better it is imo.
No, it’s not worth it if the only way it can be taken advantage of is to get gouged by NVidia. Plus, the GPU has been just a bunch of headaches for me, not to mention the Developers. First, I was on IntelIntergrated, so it didn’t have any effect. Then I got a nice AMD card with my new system, but GPU render froze Blender, and on second try, crashed Blender. After downloading and installing 90+ MB new Drivers, now I don’t even see the option to render GPU. And that’s just for OpenCL clay render.
Only about 31% of users(Nvidia Marketshare) will even be affected with the full GPU features, and when you remove the cards that are slower than CPUs, you get a small fraction of people that receive a benefit from it.
@Ace Dragon. Don’t forget that everyone is supposed to be bug fixing, and that’s why the focus is not on new features at the moment. I think it is too early to make a decision about the value of GPU rendering, We have to at least wait until the Mango developer sprint in January. Although GPU rendering is a hassle, and even when fully implemented, it will be severely limited by ram processing power, the GPU could be useful if they can develop a workflow that uses both GPUs and CPUs effectively together. Blender could use scene optimization and level of detail features, that would make it easier to fit larger scenes into the small GPU Ram. I will say that I hope they do not sacrifice CPU functionality if a feature doesn’t work on the GPU.
@FreeMind - Feature completeness is essential, if we optimize the speed to much too soon, then it could become difficult to understand the code, to add features later. At the very least it should be able to use displacement, volume and color shaders, as well as OSL. They need to be able to do particles for Mango.
@OL77 - It’s frustrating for you now, but when you are able to get it to work, I bet it won’t be as bad.
Personally I would rather see more development with GPU processing with physics systems and particle systems in blender, because that’s the type of thing GPUs are good at.
I’m not sure, it would seem that they are at the control of the graphic card vendors by a fair amount, considering that Nvidia have shown that they can cripple an entire series of cards simply to ‘force’ customers to upgrade to their ‘professional’ line.
AMD aren’t off the hook either with their drivers.
Now imagine if the majority of time by the developers went into getting the GPU side working really well, and then the card vendors turn around and say ‘well if you want OpenCL / Cuda you’ll need one of our high-end (read stupidly over priced) professional cards’, and then we’re all screwed.
A CPU vendor, such as AMD or Intel cannot turn around and say ‘you can’t render on an I5, you need an I9 999X (or whatever)’, so the lock in, or our lock out approach won’t effect that area.
But anyway we’ll still have the internal, and external engines for that matter for some time to come so it’s not an issue right at this moment.
I believe that people rather have the engine fast then feature complete.
Only as long as they don’t need a feature that is missing. The fastest renderer is useless, if all it can do is making photorealistic default cube visualizations, but you need to animate a bouncing, furry ball.
I assume, that a feature-complete Cycles would also imply a completed render API, which might lead to a whole bunch of BI and Cycles alternatives soon afterwards, among them GPU-accelerated ones as well. IMO it would be more desirable to have a couple of really well integrated external renderers available (meaning: support for any Blender features the external engine can swallow), instead of getting a hyper-optimized internal one, which can’t do hair strands, and doesn’t offer render layers, but draws precious developer time away from all other open projects for years.
Haven’t you read Brechts messages? At BEST, OpenCL will be at least six months behind CUDA in the forseeable future…
Ummm, that’s why you get a nvidia “crippled” card, no? For under $200 you can get a gtx560 which isn’t too shabby. Basically, until opencl matures a bit more and amd gets their sh!t straightened out nvidia is the only choice for gfx people IMO, and it has been for at least a couple of years now. So, at BEST, I’ll have me a new nvidia card in a couple of months edit yes I realize this can change soon, apparently amd is releasing some new drivers soon, we’ll see how they do