Is there a performance difference in Revit when it comes to choosing whether a family parameter is an instance or type parameter?
For example, I have mutliple instances of a nested family within my window family. The nested families currently have all parameters set to instance because the majority of the parameters need to have unique values in each instance. However, a few of the nested family parameters will be consistent among all the nested instances. I was wondering, and have often wondered if I can expect to see a performance increase in Revit if I change some of my instance parameters to type parameters? It wont have any effect on the user experience because all the parameters are linked to host family parameters that are controlled by formulas.
I did a quick search and couldn't find any documentation on this, so I figured I'd ask here.
Thanks!
Solved! Go to Solution.
Is there a performance difference in Revit when it comes to choosing whether a family parameter is an instance or type parameter?
For example, I have mutliple instances of a nested family within my window family. The nested families currently have all parameters set to instance because the majority of the parameters need to have unique values in each instance. However, a few of the nested family parameters will be consistent among all the nested instances. I was wondering, and have often wondered if I can expect to see a performance increase in Revit if I change some of my instance parameters to type parameters? It wont have any effect on the user experience because all the parameters are linked to host family parameters that are controlled by formulas.
I did a quick search and couldn't find any documentation on this, so I figured I'd ask here.
Thanks!
Solved! Go to Solution.
Solved by ToanDN. Go to Solution.
One could assume multiple instances with different values for instance parameters will use a little bit more memory compared to that being type parameters. I doubt it matters. And more importantly, you chose instant vs. type based on the desired function. No point in saving 1kB, and then making life harder in return.
You want to avoid nested families as much as possible. Especially nesting dolls with multiple layers of nesting.
I guess you could try it out and change one parameter to instance or type and then see if the file gets larger.
One could assume multiple instances with different values for instance parameters will use a little bit more memory compared to that being type parameters. I doubt it matters. And more importantly, you chose instant vs. type based on the desired function. No point in saving 1kB, and then making life harder in return.
You want to avoid nested families as much as possible. Especially nesting dolls with multiple layers of nesting.
I guess you could try it out and change one parameter to instance or type and then see if the file gets larger.
I don't think it matters much in nested families, but I could be wrong. However, I know some people think type parameters are slower in the main family when they make a change to them in a project, since the project has to update every element of that type. However, its a net time saver since you don't need to individually change all of those elements.
I don't think it matters much in nested families, but I could be wrong. However, I know some people think type parameters are slower in the main family when they make a change to them in a project, since the project has to update every element of that type. However, its a net time saver since you don't need to individually change all of those elements.
I would say the impact is between Negligible and No.
You only get performance hit when you have too many formulas driving geometry.
I would say the impact is between Negligible and No.
You only get performance hit when you have too many formulas driving geometry.
@AlexLibengood wrote:It wont have any effect on the user experience because all the parameters are linked to host family parameters that are controlled by formulas.
Are you saying that the parameters you are contemplating changing are associated to formula-driven parameters in another family. That would have an impact on the host family. Changing Type to Instance, or vice versa, would blow up that association.
@AlexLibengood wrote:It wont have any effect on the user experience because all the parameters are linked to host family parameters that are controlled by formulas.
Are you saying that the parameters you are contemplating changing are associated to formula-driven parameters in another family. That would have an impact on the host family. Changing Type to Instance, or vice versa, would blow up that association.
Can't find what you're looking for? Ask the community or share your knowledge.