I’m doing a decimate operation on a high poly plane and it only hits one of my 12 cores. This can’t be right can it?
The internal function that does decimation, BM_mesh_decimate_collapse, is single threaded. This is true for most of Blender’s modeling operations currently (the current Boolean is one that I know of that does some multithreading).
I’m a Blender volunteer developer and I’d like to work on making more modeling operations be multithreaded. It is in most cases, not an easy job, which is why it hasn’t been done already. I just bought a 24-core PC, partially as something to prod me into making Blender use more cores in modeling.
OK. That makes sense then, thanks. I well aware of the difficulties of SMP. I have a 16 core Threadripper on my desktop and the latest greatest x.265 codec is horribly dog slow on it topping out at 6 threads or so out of 32.
One thing I have noticed that you might know about is that quite often with a lot of polys the interface begins to really struggle even when even one core is not topped out. I assume this is short term cpu spikes that get averaged out by the system monitor app so you don’t see them.