Community
Inventor Forum
Welcome to Autodesk’s Inventor Forums. Share your knowledge, ask questions, and explore popular Inventor topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

speeding up constrain execution

43 REPLIES 43
Reply
Message 1 of 44
eleblanc
1224 Views, 43 Replies

speeding up constrain execution

SO what is everyone say, trick about speeding up constrain execution. I have started working on this new project with 2013. And i'm finding myself losing alot of time. Basicly what i do is insert part from our database or content center and assemble them. So 80% of my activities on inventor are constraints. Right now i have this assemblies 175 / 156(small to me). And executing a constraint is minimum 4 seconds each time. If you consider that about 3 contraint is needed for each piece and final total part will probably be around 1000. i'm losing alot of time here

 

Yeah, i am not using preview. Why is inventor recalculating that much each time? Is it doing a rebuilt after each constraint?

 

What have you done that really increase the excution time of constraints?

 

Workstaion is

Windows 7 64bit

Intel Extreme i7cpu  I975 @ 3,33

12bg ram

4 ssd in Raid stripping.Nvidia FX3800

Inventor 2013 SP1

43 REPLIES 43
Message 2 of 44
JDMather
in reply to: eleblanc

Are you using logic sub-assemblies?

 

Are you following efficient, robust techniques (beginning with part creation)?

http://forums.autodesk.com/t5/Autodesk-Inventor/IS-INVENTOR-REALLY-USEFUL/m-p/1332811/highlight/true...


-----------------------------------------------------------------------------------------
Autodesk Inventor 2019 Certified Professional
Autodesk AutoCAD 2013 Certified Professional
Certified SolidWorks Professional


The CADWhisperer YouTube Channel


EESignature

Message 3 of 44
stevec781
in reply to: eleblanc

I agree, its a big problem.  Adding mates, deleting mates, and moving parts by dragging causes inventor to think for around 4 seconds every time you do something.  Its not the time but the frustration of waiting.  It's competitors dont have this problem.  I am trialing solidworks and Creo at the moment and they are much faster.  This issue is one of the reasons I am looking at alternatives.

Message 4 of 44
eleblanc
in reply to: eleblanc

Amaze me that no one at autodesk offered suggestions. Anyhow a solution is to enable "defer update", basicly the part you are placing won't move until you update assembly. But i'd really like to now what the software is doing when "executing" a constraint. Could suppressing some already existing constraints in the assembly help, i will test that and report.

Message 5 of 44
eleblanc
in reply to: eleblanc

I did a test by simply suppressing all constraint of my assembly. And that did the trick. Now constraint execution is instant, just like back in earlier version. Now is there a way to get inventor to not do what it is doing with all other contraints so that doing more constraints are now slowwwwww. What we need is a much faster constrain execution (assemble isn't faster) or a option that would prevent the execution of doing what it does and all constraints in a assembly are unsurpress.

 

For now i will supress all contraints and ground my parts. I will continu on building my assembly and once every couple of hours i will unsupress all contraint unground all parts and let it update.

Message 6 of 44
stevec781
in reply to: eleblanc

The problem with using defer update is that the part doesnt move when the constraint is placed and if you drag a componenet it makes no difference, Inventor still has to think about it for a while.

 

My guess is that it rebuilds the parts being mated to check that the faces are valid, and if I am correct then thats just stupid.  I have no idea why it thinks for so long after something is dragged.

 

Here's a simple test.  Save your assembly.  Then bring a part in and save it again.  Save once more to check that the save list is empty.   Now mate the part to something.  Press save.  It will list all the parts that need saving, which means that the mate has caused them to be rebuilt.  I often get parts listed that have no relationship to what is being mated.  My VAR has seen it and had no idea why some parts are being rebuilt.

Message 7 of 44
mrattray
in reply to: eleblanc

Sub assemblies are the solution to your problem. (As JD mentioned earlier)

Mike (not Matt) Rattray

Message 8 of 44
eleblanc
in reply to: eleblanc

So what you are saying is that we should keep maximum number of part in a assembly under 40-50?

I have sub-assemblies. I've done much larger assemblies in past version and it was faster.

 

My question is what consist of "executing constraint"? other then moving the part visualy where it should go?

Message 9 of 44
mrattray
in reply to: eleblanc

I rarely go over a dozen unique parts (not instances) in one assembly, but I have other reasons for that. I get excellent assembly performance.

Mike (not Matt) Rattray

Message 10 of 44
stevec781
in reply to: eleblanc

I use sub assemblies which typically have 1 or 2 parts and a few frame generator members, its the only way I can separate frames so I use sub assem a lot.   My less than 500 part models have very little adaptiveity, use lots of skeletal techniques, are painfully slow, and have been checked by my VAR's best trainer who found nothing wrong and no way of improving speed. Like I said it's so bad I am willing to go through the pain of switching to something else.  I didnt think it was that bad until I tried the other programs on the same machine.  Inv are way behind in speed.  For example on 1 part (not assem just a part on its own), Inv takes 14 seconds to update after a dimension change, Creo takes 1 sec.  Inventor is way more user friendly but just too slow.

Message 11 of 44
randym19ca
in reply to: eleblanc

Have you tried disabling "Enable constraint redundancy analysis" and "Enable related constraint failure analysis" in Application Options / Assembly tab?

Message 12 of 44
eleblanc
in reply to: randym19ca


@randym19ca wrote:

Have you tried disabling "Enable constraint redundancy analysis" and "Enable related constraint failure analysis" in Application Options / Assembly tab?


Yes, no change. It really is when i supress constraints that things gets speedy again. I'm sure the Autodesk team is well aware of this.

Message 13 of 44
SteveMDennis
in reply to: eleblanc

Hello guys,

 

 How many constraints at the top level are we talking about?

 Are you using adaptivity?

 Are you using flexible sub assemblies?

 Are you using Positional Variations?

 

To answer the one question directly, no we do not rebuild the parts to validate geometry unless those parts are out of date.

 

Remember that one difference between Inventor and competitors is that Inventor is a variational solver not parametric, so the entire system is resolved every time rather than building one constraint on top of another like you can do in a parametric system.  A variational solve can change in another part of the system with an additional constraint, the solution varies on the entire system of relationships.  i.e. right field changes CAN affect left field.

 

Subassemblies are a good solution, grounding things that are located correctly should help, making sure at least one thing is grounded should help (i.e. a starting point)

 

The solver attempts to remove Degrees of Freedom based on the SET of constraints.

 

I hope this helps.

Questions?

 

WOuld you be able to share your dataset for us to look at?

 

 



Steve Dennis
Sr. Principal Engineer
Inventor
Autodesk, Inc.

Message 14 of 44
JDMather
in reply to: eleblanc


@eleblanc wrote:
 It really is when i supress constraints that things gets speedy again.
I'm going to suggest an experiment that you might find a bit of work.
Go to Modeling View.
Expand the Constraints folder.
One-by-one suppress them (only one at a time or only those on a particular part).

Does it suddenly work fine.
In my experience it usually turns out to be (user) an error in logic.
Sometimes it is with a bad part (in fact I can usually zero in on the problem constraint pretty quickly without going through them all as I have seen what typically causes the problem over and over again.
Is anyone looking at your dataset?

 


-----------------------------------------------------------------------------------------
Autodesk Inventor 2019 Certified Professional
Autodesk AutoCAD 2013 Certified Professional
Certified SolidWorks Professional


The CADWhisperer YouTube Channel


EESignature

Message 15 of 44
JDMather
in reply to: stevec781


@stevec781 wrote:

.... checked by my VAR's best trainer who found nothing wrong ....


 

 

Time to find another VAR.

 


-----------------------------------------------------------------------------------------
Autodesk Inventor 2019 Certified Professional
Autodesk AutoCAD 2013 Certified Professional
Certified SolidWorks Professional


The CADWhisperer YouTube Channel


EESignature

Message 16 of 44
eleblanc
in reply to: JDMather


@Anonymous wrote:

@eleblanc wrote:
 It really is when i supress constraints that things gets speedy again.
I'm going to suggest an experiment that you might find a bit of work.
Go to Modeling View.
Expand the Constraints folder.
One-by-one suppress them (only one at a time or only those on a particular part).

Does it suddenly work fine.
In my experience it usually turns out to be (user) an error in logic.
Sometimes it is with a bad part (in fact I can usually zero in on the problem constraint pretty quickly without going through them all as I have seen what typically causes the problem over and over again.
Is anyone looking at your dataset?

 


JD, i did not go as far as supressing them one by one, but i did so with a increment of about groups of 10-15. And the speed gradually got worse as i unsupress constraints. It wasn't a case of no change then sundenly all slow, like a culprit would be in that last groups of 10-15 i just unsupress.

If i have a chance i will get the whole thing in my private dropbox for you to give it a shot if you want.

Message 17 of 44
JDMather
in reply to: eleblanc


@eleblanc wrote:
If i have a chance i will get the whole thing in my private dropbox for you to give it a shot if you want.


Somewhere up above Autodesk also requested the dataset - I assume the Desker has more time for this sort of trouble shooting than I have.  I would only be able to give it a few minutes. (but maybe that is all it would take - sometimes it just takes another set of eyes to see the obvious)


-----------------------------------------------------------------------------------------
Autodesk Inventor 2019 Certified Professional
Autodesk AutoCAD 2013 Certified Professional
Certified SolidWorks Professional


The CADWhisperer YouTube Channel


EESignature

Message 18 of 44
stevec781
in reply to: SteveMDennis


@SteveMDennis wrote:

 How many constraints at the top level are we talking about?

 Are you using adaptivity?

 Are you using flexible sub assemblies?

 Are you using Positional Variations?

  


Thanks Steven, can you elaborate more about how Inventor thinks. 

 

To answer your questions above, not many, rarely, no, no.  I try to ground and use derived component wherever practical.

As an example my very top level asm has 381 occurances and 378 open in session, so not large.  I have a sub assem called cabin which is grounded at 0,0,0, It then has a dash sub assem (grounded at 0,0,0),  which has a dash part (grounded at 0,0,0).  The dash part has one adaptive sketch with 1 edge referenced.  The dash face has a hole in it.  To make a quick drawing I dropped a steering wheel in at the very top level and used an insert mate to mate the base of the wheel to the hole in the dash.  After a complete rebuild and save I rotate the wheel by dragging it.  Inventor thinks for about 4 seconds.  When I then press save I get as below.

 

save box.jpg

 

I cant understand why a simple drag has caused so many updates, and even more confusing is why the fuel tank is one of them.  My VAR spent 3 hours trying to figure out what is going on with no luck (I cant find a new one as they are the only ones here), so that was a waste of 3 hours of my time.

 

Maybe if you can explain more about how Inventor thinks I can figure out what is going on here.

 

Another maybe related question, why does the productivity tool ground and root component also add mates to all the planes?  Does inventor still require mates even when a part is grounded?

Message 19 of 44
SteveMDennis
in reply to: stevec781

Steve,  you're not the original poster right?  I'm just a bit confused.

 

Explaining how Inventor "thinks" would take more than i'm willing to type and is specific to each solve set.  My original explanation of variational vs. parametric will have to suffice for now w/o specific data.

 

You said "not many" constraints, how many is that?  How many do YOU think is not many?  Our idea might be different.

The adaptive sketch will impact solve time.  HOw much is not clear w/o data.

 

You said after a complete rebuild?  What exactly does that mean? You used the rebuild all command?

 

If you did of course that will dirty sub assemblies and parts.  I doubt the drag caused the dirtying.

 

If you can supply the dataset we can discuss specifics but trying to explain all the cases here would be fruitless I'm afraid.

 

The productivity tools were not written at autodesk, they were "consumed" by us and published I think.  I have no idea why ground and root does what it does.

 

 



Steve Dennis
Sr. Principal Engineer
Inventor
Autodesk, Inc.

Message 20 of 44
stevec781
in reply to: SteveMDennis

Hi Steve

No not the OP, I posted 3rd.  But still on topic of slow performance caused by mates.

 

I didnt want to open and count the constraints, but at a guess 20% of parts/assem are placed with constraints, about 80% grounded with no constraints.  About 10% with adaptive sketch, 90% using derived workflow.  Total occurances in project less than 400.

 

I understand that associaive sketches will impact rebuild time when parts are edited, I just dont get why dragging parts and adding mates are causing rebuilds in unrelated parts.

 

Complete rebuild means rebuild all, then save, then save again just be sure 100% sure everything is up to date and saved.  Then rotate the wheel and press save to get supplied screen shot.  The rotate is affecting the other parts.

 

You can see the steps here http://screencast.com/t/tNhBkVlmw

 

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report