Assembly File Size?

borisw37
Posts: 3
Joined: Mon Dec 05, 2022 10:09 am
Answers: 0

Assembly File Size?

Unread post by borisw37 »

What would cause an assembly file size to grow 2x, 4x, without adding any more components?
Originally an assembly was ~25MB. Then, over a few saves it grew to 160MB!
If I do "Save As New", give it a new file name, it is back to ~25MB.
What could be causing it? How can I reduce the file size w/out having to make a new file and re-reference?

Running SW2023, recently updated because 3DExperience :(
Not sure if I noticed this issue on previous version.
User avatar
AlexLachance
Posts: 2196
Joined: Thu Mar 11, 2021 8:14 am
Answers: 17
Location: Quebec
x 2382
x 2025

Re: Assembly File Size?

Unread post by AlexLachance »

I've had that happen and I've deduced that it's a minor corruption in the cache that gets cleared when you do a save as.


I do a save as to create the new file, then close everything. I then delete the original file and rename the newly created file to the original file name and all is good.
User avatar
bnemec
Posts: 1946
Joined: Tue Mar 09, 2021 9:22 am
Answers: 10
Location: Wisconsin USA
x 2552
x 1401

Re: Assembly File Size?

Unread post by bnemec »

Are there configurations in assembly file?
borisw37
Posts: 3
Joined: Mon Dec 05, 2022 10:09 am
Answers: 0

Re: Assembly File Size?

Unread post by borisw37 »

@AlexLachance
- Agree. That is a viable option. Trying to get to the root cause so I don't have to monitor file sizes and add tasks to my workflow.

@bnemec
- Nope, no configurations.
User avatar
zwei
Posts: 701
Joined: Mon Mar 15, 2021 9:17 pm
Answers: 18
Location: Malaysia
x 185
x 600

Re: Assembly File Size?

Unread post by zwei »

are you working on shared/network drive?
Far too many items in the world are designed, constructed and foisted upon us with no understanding-or even care-for how we will use them.
borisw37
Posts: 3
Joined: Mon Dec 05, 2022 10:09 am
Answers: 0

Re: Assembly File Size?

Unread post by borisw37 »

@Zhen-Wei Tee
Yes, typically the files are on the shared/network drive.
I have been able to replicate the problem by copying everything to a local drive though...
Why do you ask, is there a known bug, or some Windows issue with network drives and SW?
User avatar
Peter De Vlieger
Posts: 52
Joined: Fri Mar 12, 2021 9:46 am
Answers: 0
x 223
x 105

Re: Assembly File Size?

Unread post by Peter De Vlieger »

It's not a bug, it's a feature.

I mentioned how stupid SW is with file size growth a decade ago. The general responds was that storage is cheap so why am I making a fuss about a PRT being 200KB even although it only has one feature in it because they don't understand that most ASM's don't just have a handful of PRT's in it and anything that makes files get bigger for no real reason is just detrimental on the flow.

The last few years it's even become frankly ludicrous. While promising quick load times they actually made it so that the files become way bigger, in some cases in order of magnitude. Think about it, promising quick load times while increasing file sizes. I certainly can't be the only one to see that something is not right.
E.G.: detailing mode back in 2020 was touted as making drawings quicker to load and this while the DRW ended up 30% to 200% bigger.

I don't know who's at the helm but it sure isn't someone that ever had to use the product.
User avatar
zwei
Posts: 701
Joined: Mon Mar 15, 2021 9:17 pm
Answers: 18
Location: Malaysia
x 185
x 600

Re: Assembly File Size?

Unread post by zwei »

borisw37 wrote: Tue Dec 06, 2022 9:24 am @Zhen-Wei Tee
Yes, typically the files are on the shared/network drive.
I have been able to replicate the problem by copying everything to a local drive though...
Why do you ask, is there a known bug, or some Windows issue with network drives and SW?
I used to face similar issue when i works on network drive in the past.
BUt if you are able to replicate on local drive it might not be related to the network drive.

Have you tried a registry reset?
Far too many items in the world are designed, constructed and foisted upon us with no understanding-or even care-for how we will use them.
User avatar
Frederick_Law
Posts: 1948
Joined: Mon Mar 08, 2021 1:09 pm
Answers: 8
Location: Toronto
x 1643
x 1471

Re: Assembly File Size?

Unread post by Frederick_Law »

Alin can give you a full explanation.

Detailing mode save some model info in drawing. So SW don't need to load all the models before user can work on the drawing.
I think similar thing happen to assembly. Some part info is saved in assembly.

Opening a 10MB file doesn't mean loading all 10MB at once.
ie database files could be in Terabyte size, impossible to load in memory but you have no problem using the database.
Blu-ray video file start at 25GB. You don't need 25GB RAM to play it.
User avatar
Peter De Vlieger
Posts: 52
Joined: Fri Mar 12, 2021 9:46 am
Answers: 0
x 223
x 105

Re: Assembly File Size?

Unread post by Peter De Vlieger »

Frederik,

Correct me if I'm wrong but unlike a database, where the program can do a query on a database and there for only load bits and pieces of the database instead of the entire database, Solidworks loads a file completely. Or in other words, a file of 50MB when accessed by SW means a minimum of 50MB is transferred.

That file being either
-PRT : a standalone file containing all data needed to recreate that PRT (and perhaps containing data pointing at other files)
-ASM : a standalone file that points what other files need to be loaded to make up the ASM, be it PRT's or ASM's and how they relate to each other and there for loading all those bits and pieces.
-DRW: a file that normally has the annotations as well as the the 'hooks' so as to load into memory the needed PRT's and ASM's.
As far as I can tell the only difference in detailing mode is that a bunch of the data of the PRT's/ASM's is stored within the DRW so that the DRW while loading doesn't call up the needed data in the background. Or as I understand it, it becomes quicker to visualize on screen only because the data you see doesn't get computed(instead of calculating every x,y,z it's a table with the values of x,y,z,) which to me points to a very bad optimization of how the data 'normally' gets processed.

In other words, when SW loads an ASM file of 50MB it might be loading that 50Mb + whatever else it needs concerning sub-ASM's and PRT's. If it didn't then it would mean that if you loaded the ASM of a house and you wanted to focus on the kitchen that you would have to wait for the kitchen to load and when you wanted to switch to the attic that their would be more loading so as to show you the attic. It doesn't work that way, does it?
User avatar
DanPihlaja
Posts: 853
Joined: Thu Mar 11, 2021 9:33 am
Answers: 25
Location: Traverse City, MI
x 813
x 983

Re: Assembly File Size?

Unread post by DanPihlaja »

Peter De Vlieger wrote: Thu Dec 15, 2022 4:16 am Frederik,

..... If it didn't then it would mean that if you loaded the ASM of a house and you wanted to focus on the kitchen that you would have to wait for the kitchen to load and when you wanted to switch to the attic that their would be more loading so as to show you the attic. It doesn't work that way, does it?
It does if the Attic were suppressed when you opened it. Like, say a configuration to show only the kitchen were opened, then switched to a configuration of the attic, then the attic would load when you unsuppressed it.

The other caveat is Large Design review or Large assembly mode. In both cases only portions of the components are loaded until you request the rest.

But other than that, then yes, I believe that it works the way you say it will.
-Dan Pihlaja
Solidworks 2022 SP4

2 Corinthians 13:14
User avatar
Frederick_Law
Posts: 1948
Joined: Mon Mar 08, 2021 1:09 pm
Answers: 8
Location: Toronto
x 1643
x 1471

Re: Assembly File Size?

Unread post by Frederick_Law »

Peter De Vlieger wrote: Thu Dec 15, 2022 4:16 am Frederik,

Correct me if I'm wrong but unlike a database, where the program can do a query on a database and there for only load bits and pieces of the database instead of the entire database, Solidworks loads a file completely. Or in other words, a file of 50MB when accessed by SW means a minimum of 50MB is transferred.
"One size doesn't fit all"
Best is load everything into memory because the program will run faster, if there is enough RAM to load everything.
(You are complaining about file size, other are complaining high RAM use, high CPU use. That's another story ** or two)
To keep the program responsive, it need to load as much into RAM as possible.
The faster and less files to look for those info, the faster the program become responsive.
Since everyone was complaining SW was slow when loading large assembly and drawing, something was done to make it "faster".
That "something" is put some of those info in assembly and drawing file.
Every time a model is loaded, SW (or any CAD) need to calculate how to display it on screen. It is slow.
So some of the result is saved in part file, assembly and drawing. So user can see, zoom and rotate the model. Before everything is loaded and calculated.
Those "extra" info are not really extra. They were calculated before. Now they're saved and reuse so user don't need to wait a minute.
So actually even file size increased, nothing more was added to RAM. They are there a minute earlier.
SW became a time machine oa

Lost track of my thought, I'll be back .....
Post Reply