Hey! So I just purchased the RTX4090 and 13900K, and I am experiencing some strange bottlenecking I believe.
I use Adaptive Subdivision, changing dicing scale and doing some other things - this should utilize most of the CPU power to calculate, but I’m only getting 5-10% CPU power while it’s calculating and it’s taking so long to actually get the adaptive subdivision calculated so i can continue working.
Most tasks in Blender aren’t multi-core, IiRC- what you’re seeing is probably single core performance. I think it’s being worked on, I saw a discussion about it the other day
Even tho multi-core CPU’s are a big headline deal these days, it can be surprising just how many things actually aren’t and in a lot of cases, can’t be heavily multi-threaded.
In a lot of cases it’s just not possible, as the data just needs to be processed sequentially, as such Single core performance can still really matter. Since you have a 13900K, you already have basically the fastest single core CPU anyway, so in general it takes as long as it takes.
This does of course assume your system is running correctly, depending on if you bought the system as a whole or built it yourself. Even if bought as a whole, not all sellers configure/optimise stuff fully or correctly. It’s very possible to buy a big name system and not have XMP turned on, for example.
Best thing to do, if grab a couple of benchmark type apps, Cinebench R23 for single and multi core CPU tests are good, as many reviewers use it. That way you can compare scores and see if your system is in the same ballpark.
Could use Blender Open data benchmark for the GPU as well.
Just to make sure, you only have gpu enabled for rendering or gpu+cpu? Because hybrid rendering is much slower than just gpu due workload balancer efficiencies.
4090 has 12122 score on opendata while 13900 is 576 so it’s ~21 times slower and even in ideal world with perfect balancer performance increase would be tiny.
One thing that will KILL your render times and crank your memory use to the Moon when using Adaptive Subdivision is having a value other than “0” in the “Render” subdivisions before you turn on “Adaptive Subdivision”
For example:
Rendered with a (“Render”) subdivision setting of “0” and Adaptive Subdivision ON (note time and memory use)
I’m guessing that Cycles is tesselating the mesh twice - once for the settings in the “Render” value and again for the Adaptive Subdivision.
So, the moral of the story is to make sure your “Render” levels are set to “0” if you’re going to use Adaptive Subdivision (I actually think this is a bug)