PDA

View Full Version : TOOLS IN MODELER - Which ones need to be MultiThread'ed



tcoursey
06-24-2013, 07:12 AM
We'll since forever ago, lot's of tools in Modeler have been single threaded. Today's machines with 12+ cores in some cases are not being utilized very efficient.

I thought while I waited on an outline to get SLICED into another poly with only a single thread I would use my other 11 cores to do some Community Discussion....

What TOOLS would you prefer to be re-written to be multi-threaded. I don't know that we will get everything all at once in a single app (I may not even want that) but as the team "bolt's on" new tools in each new release, I figured we can at least ask for some new tools that are multi-threaded.

I seem to use SLICE with large poly objects and for that tool to only use one core it sometimes takes a bit...Yes even now, I'm still waiting on my slice....

So how about you, any tools you want priority development on? Have I missed something, is there a new tool that is multi-threaded, I know the last releases introduced some new bolt-on tools?

Slice is complete now...back to work.

3DGFXStudios
06-24-2013, 07:41 AM
I don't know if it's possible to make them all multi threaded but a good start wood be the bandsaw tool julliene tool, bevel, smooth-shift, and the basic stuff like move, rotate, and scale.

tcoursey
06-24-2013, 08:15 AM
I don't know if it's possible to make them all multi threaded but a good start wood be the bandsaw tool julliene tool, bevel, smooth-shift, and the basic stuff like move, rotate, and scale.

oh man, I never thought of Move, Rotate and Scale. Are those not multi-threaded...I just figured those were more dependant on Open GL. Maybe not. Those could def. use some improvement if not. I know a competitor's product is much smoother on my machine than LW/Modeler when it comes to some of those commands. hmmm....

Tobian
06-24-2013, 10:46 AM
While I think many tools could benefit from multi-threaded, the problem is not everything can neatly be sliced up. Most deforms could (move, rotate, scale, bend etc.) but many could not (boolean) as the task needs access to the whole model, not just part of it, so it can't be sliced up. That said, it's not really the threaded nature of Modeler which is the issue, but the way it handles large geometry, which causes slowdown. Hopefully if they can update everything to the new modeller core, then we'll see a great speed increase, regardless of threading.

tcoursey
06-24-2013, 10:49 AM
While I think many tools could benefit from multi-threaded, the problem is not everything can neatly be sliced up. Most deforms could (move, rotate, scale, bend etc.) but many could not (boolean) as the task needs access to the whole model, not just part of it, so it can't be sliced up. That said, it's not really the threaded nature of Modeler which is the issue, but the way it handles large geometry, which causes slowdown. Hopefully if they can update everything to the new modeller core, then we'll see a great speed increase, regardless of threading.

hmm...sounds like you may have more insight, knowledge into this type of discussion than I do. All I really know is that competitor products handle simple things like SLICE on large amounts of data much better...it seems.

What is this product CORE you speak of? (sarcastic voice) I am familiar with all the hype announcing it many years ago. Our studio did not buy into the program, thankfully as nothing has become of it...

But maybe your right, they may still be working on something...just not telling anyone. Thanks for the thoughts...

Tobian
06-24-2013, 11:52 AM
Well for operations like move and rotate the task can be split into multiple tasks because the operation is self similar - take one point> add a vector (xyz) return point to the space. You are taking each point and doing this, so if it's 1 thread of millions it's not relevant. (thought threaded always yields diminishing returns)

if a tool is doing a boolean operation, then it needs to measure the whole model, to see if a face is inside or outside, for example. if your points don't align, then you'd have to pre-slice the model into chunks, then do the boolean, then re-merge the chunks together.. which would probably take longer. Not everything is simple or possible to subdivide into smaller tasks, and to be honest this is an issue of modern computing in general: as computers move towards multi-threaded instead of single threaded, how do you split tasks into threads that don't split well into discreet tasks. All 3D software has this problem to solve.

The new modeler core is the new engine that the new modelling tools (such as transform, heat shrink, edit edges, chamfer etc) all use. You'll notice there's a slight delay as the tool copies the geometry into the new modelling core, before you can begin editing, but it's so much more responsive than many of the old tools, and when you finish it copies it back. I am guessing the long term goal is to convert all tools to the new modelling core and deprecate the old one, but who knows? :D It's not perfect, but the new modeler core is a great step up, as it's so much aster at editing meshes, it's just a shame it's not system wide (because they need to convert the old tools to use it).

COBRASoft
06-24-2013, 12:20 PM
Tobian, in this boolean example, you can still do this multithreaded. Searching for the cutting 'lines' can be done multithreaded. Calculating the cuts themselves probably too, but it takes some specialist to get it done right.

Also, multithreading comes with overhead. So, some small stuff wouldn't even benefit from it at all.

Tobian
06-24-2013, 01:03 PM
I didn't say it wasn't possible, it's just hard, and yes, as you say, the overhead can often overwrite any benefit in doing it. Single threaded is not the biggest limiting factor in LW though, it's large polygon handling issues. Compare the responsiveness of editing a few polygons in a huge mesh, vs editing a few polygons in a light mesh. Solving that issue with large polygon handling will yield more benefit than multi-threaded.

Snosrap
06-25-2013, 06:44 AM
None of them! - Modeler needs a complete rewrite to fix it's ails.

Waves of light
06-25-2013, 07:47 AM
I would love to see NT re-do modeler, keeping the current UI, but with the speed and stability of the original CORE functions, but it's same old, same old. To make Modeler 'work' or introduce multi-threaded functions would require a lot of reworking of older code (albeit we have seen some new Modeler tools introduced in the v11 cycle). So better to start off a fresh. Which we all know ain't going to happen soon.

Have to see what Siggraph brings us this year.

Surrealist.
06-25-2013, 05:24 PM
There is nothing wrong with the tabs along the top and the menus to the left. The stuff along the bottom could use some reworking.

The problem is what happens in the space between all of that. A throwback to the 20th century when it was created. A museum piece.

I am not sure how you go about fixing that and keeping everyone happy. There is likely to be a trade off someplace.

geo_n
06-25-2013, 10:25 PM
None of them! - Modeler needs a complete rewrite to fix it's ails.

FTW. Lets start seeing some modelling tools in layout that's something worth investing and future proofing. :D

Tobian
06-26-2013, 07:05 AM
As I said, there is a new modeler core... and new tools are being made with this new modeler core, and many things are being replaced... so you guys are getting a lot of what you're asking for!