Was wondering if you can help.
I am having an issue with some Inventor files. We are busy with large and fairly complex models of well over 1000 parts. When I derive these assemblies I often get ipt files larger then 100MB in size. I do include the reduced memory mode when creating these derived components but still get massive files. The assemblies then get very heavy with this sort of file inserted. I have gone through a lot of white papers on "working with Large assemblies" which have helped in some aspects. Do any of you have any comments or suggestions on working on large assemblies, or reducing the file size of some of my derived assemblies?
Our workstations are more then recommended spec with 12GB RAM, 2.8GHz Quad Core processors and have Quadro Cards.
Welcome to the world of large files.. its normal.
#1-Hard drive space is cheap.
#2-Remove any unnecessary parts if you can (fasteners,etc..)
What is your purpose of deriving the assemblies?
Can you clarify if you have an assembly with 1000 files open or 1000 instances of parts?
I have worked with assemblies much larger than this and really don't see any noticable performance issues. Recently I worked with a site model containing over 7000 instances of parts and covering an area about 63 feet x 82 feet. None of the assemblies in this site model were derived into ipt files, etc.
The actual number of files is irrelevant.. The size/complexity of the files makes a world of difference.
Use Level Of Detail representations. Makes all the difference.
"Level of Detail representations improve capacity and performance. They suppress unneeded components or replace many parts with a single part representation to reduce memory consumption and to simplify the modeling environment. Save the representation with a name and activate it for modeling tasks or select it for creating drawings, presentations, and derived assemblies. A derived part created from an assembly that uses an LOD with a reduced number of parts can be used in the same assembly it was created from as a Substitute LOD. A simplified substitute provides greater memory savings than suppression alone. When a Substitute Level of Detail is active, all components are suppressed and hidden in the browser. "
Our major sub-assemblies have 10,000-20,000 instances, and the top level assemblies have 50k-60k instances of 3k-4k files. Whether or not you use derived parts, the key to performance is using Levels of Detail. For example, you rarely need to show fasteners in the top level assembly. You can suppress internal components and small components that don't add value. If you want to use a different LOD, it can be faster to close the model and reopen with a different LOD than switch LODs with the model open. I don't know why it takes 2-3x more time to switch, but it does make a difference in my quality of life.
You need to be careful with LODs in drawings. When you create a view of an assembly using a different LOD it brings the entire model in. You can have a 10 sheet drawing and it will only load the model once if all of the views use the same LOD. If you use a different LOD for the base view on each sheet, the drawing will load the model 10 times.
The other way to improve performance at the top level is to use View Representations. Once the model is loaded, graphics become the main performance hit. On a large assembly, you are usually only working with 10-20% of the model. Y can dynamically turn the visibility on and off for components without a huge time hit, and you will see a big performance improvement.
Although it is tempting to use Derived parts, I am not seeing a big improvement in loading the top level assembly model. It is a big performance hit working with the model because I can't turn off visibility of sub-assemblies. If you do use derived parts, select the Maintain Each Solid as a Solid Body option. This is new in 2011, and Inventor doesn't have to analyze every model face to determine if it is on the inside or outside. I haven't seen a performance impact while using the derived part with all of the solids, but it makes a huge difference creating or updating it.
My basic process is:
Of course, performance is dependent on the model size. Our models are huge, so there is an ROI to spend the time creating LODs and View Reps. You have to experiment to see how much performance improvement you get with LODs. Graphics cards make a huge difference in large assembly performance. Once the model data is loaded, the graphics have to be generated and then analyzed when you rotate, zoom in and out, etc. I haven't looked at hard drives yet, but people are reporting a big performance improvement using solid state drives. This makes sense because the data is pulled off disk more quickly.
Graphics settings are also important. In Application Options>Display tab, set the View Transition Time as low as you can. It helps to have some delay so you can watch the model view rotate, but every update takes time. Set the Minimum Frame Rate as low as you can. This impacts how much of the model disappears as you change the view, especially while panning. The recommended performance setting is 10, but don't believe it. You can see a big performance difference when you try the different settings. Reducing the Display Quality causes the model to display as faceted during view manipulation. Lower settings display fewer facets. Of course, these settings don't impact performance as much as you turn component visibility off.
As I mentioned, you should experiment with your models so you can optimize the different settings. It would also be nice if you would report back with your findings. I am sharing the results of several weeks of performance testing spread out over 3-4 months. Another data point will help other users achieve their performance improvements more quickly.
Inventor 2012 has addressed the issue in Drawings where when using a partslist it pulls in the entire assembly instead of only the components that are part of the LOD. It has also been addressed in the Assembly BOM.
Senior Dev Manager
I saw the number of components double when I created a base view with a new LOD. I was testing drawing creation performance with different LODs, and it caught my attention. I don't recall if I had a parts list for the first LOD, but I closed without doing anything with the new LOD.
It would be nice if the the model loading issue was resolved for drawings in general. For our very large assemblies, I would still create a specific LOD for each drawing type and use view reps to control what is displayed in a view. There are enough performance issues creating and switching between LODs that it isn't worth the effort creating extra LODs.
We recently moved to 2011, and I need to evaluate 2012 so we can determine when to schedule the transition. Since we have unusual requirements, I need to do a pretty rigorous evaluation.
I'm in the 60k + range as well... very frustrating at times. LOD's definately help. Just started shrinkwrapping some of the lower iam's. Hopefully that will help a little as well as using a LOD with All Hardware Off. Hopefully getting a new workstation soon too.