on 2017-01-1712:37 AM - edited on 2021-11-0812:51 AM by Noemi Balogh
When one works with large files (wants to view in 3D or render large models with ARCHICAD, send and receives into a large Teamwork file or do any other memory consuming operations) and ARCHICAD is crashing or is explicitly warning that it went out of memory or it just renders an empty image, then it is good to check how much memory it uses in order to decrease memory usage by making the file more efficient.
In Windows or Macintosh Operating Systems the amount of the addressable memory for an application is limited. The "addressable memory" term means in fact the maximum size of Virtual Memory that an application can use. Virtual Memory of an application is the sum of the Physical Memory and the Page File Data allocated to A. For using the physical memory efficiently by multiple applications and by the system at the same time, some data that are not immediately needed for an application are saved in to the Page File that exists on the hard drive.
The figure shows that the Virtual Memory allocated to an application is made up by two parts: data in the Physical Memory and data in the Page File. The part of the virtual memory that is currently residing in the physical memory changes from minute to minute not just because the application might ask for more or release virtual memory but also because the system is always exchanging data between the paging file and the part in the physical memory. The maximum of the Virtual Memory for an application is OS dependent. For a 32 bit application it is 4 GBytes (adress space) in 64 bit Windows systems and MACs. With ARCHICAD Windows version having a 64 bit Windows will increase the virtual addressable memory per ARCHICAD instance to 128 Terabytes . You can read more on this here. For 64 bit applications it is usually the full hard disk that causes the loss of virtual memory. And another thing to consider: significant slowness can be the result of too many paging e.g. on a relatively few RAM too many memory intensive applications have to share.
Checking Virtual Memory Usage on Windows
To check how much virtual memory an application (e.g. ARCHICAD) uses on Windows systems one has to use the Process Explorer application provided by Sysinternals: http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx The standard built in Windows Task Manager is not good for this purpose because the term referred there as Virtual Memory Usage is not correct. So download Process Explorer and make the columns shown on the below screen capture visible:
Virtual Size is the term used by Process Explorer for Virtual Memory. So one has to check how much this value is close to the limit defined by the OS. As a side note it can be mentioned the Working Set column stands for the Physical Memory used by a particular application.
Checking Virtual Memory Usage on Macintosh
To check how much virtual memory an application (e.g. ARCHICAD) uses on Macintosh systems one has to use the Activity Monitor application available in the Applications/Utilities folder. After running it one has to choose the System Memory tab:
Virtual Memory is the term used by Activity Monitor for Virtual Memory. That is a correct approach :). So one has to check how much this value is close to the limit defined by the OS. Please note that if the limit is 4 GBytes and the virtual memory usage increases until for example 3.8 Gygabyte and it stops and ARCHICAD seems not finishing properly its job then this might mean that in the last operation ARCHICAD tried to allocate a block of virtual memory more than the largest available memory block available. As a side note it can be mentioned the Real Memory column stands for the Physical Memory used by a particular application.
What to do if it turns out that the virtual memory is not enough
- In the Work Environment under Advanced Redraw Options Move the Memory Usage slider to Low. It will make some functions of ARCHICAD slower but it will use less memory. It might not always improve the situation because it only has effect on few functions. - One should separate the model file from the documentation file and this way memory usage can be made lower.