|
[Sponsors] |
ERROR: Unable to allocate 45256392 bytes of dynamic memory. |
![]() |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
![]() |
![]() |
#1 |
New Member
Edgard Espinosa
Join Date: Jun 2009
Posts: 18
Rep Power: 17 ![]() |
Hi,
I was trying to generate a volume mesh when I got an error: ERROR: Unable to allocate 45256392 bytes of dynamic memory. ERROR: Out of memory while meshing volume.### Does any know how I can fix this? Are there any setting on can change in my PC systems? |
|
![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47 ![]() ![]() |
If this is a 32 bit system, you are limited to less than 2 Gigs of memory for any process. If it is a 64 bit system, you are limited by available memory.
My guess is that your mesh parameters are finer than you realized. Try increasing your minimum size. You might want to just scale up your entire mesh by a factor of 10 to see what you get and then ratchet it back down from there. If your mesh needs to be this fine and you can't access any more memory, you may need to break it up into sections and then reassemble them later. |
|
![]() |
![]() |
![]() |
![]() |
#3 |
New Member
Edgard Espinosa
Join Date: Jun 2009
Posts: 18
Rep Power: 17 ![]() |
My system is a 64bit with Xeon @ 2.33GHz and 64GB of RAM.
I don't think I am in need of more memory. 34MB of dynamic memory should not be a problem. Unless I am overlooking something. Could there be something else? |
|
![]() |
![]() |
![]() |
![]() |
#4 |
Senior Member
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47 ![]() ![]() |
There must be something else, sorry I don't know what it is.
Do you have access to tech support? techsupp@ansys.com or 1-800-937-3321 (in the USA/Canada). |
|
![]() |
![]() |
![]() |
![]() |
#5 |
Senior Member
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47 ![]() ![]() |
Actually, I still think you could try my previous suggestion.
![]() GO to the Mesh Tab => Global Mesh Setup => Global Mesh size and increase the Scale Factor 10 fold. (if it is 1, set it to 10, if it is 5, set it to 50). This will increase all the mesh sizes in your model by 10 fold and, if it meshes, may help you diagnose if you have a run away mesh problem. If it works or looks way to course, lower it to 5 fold, or something and repeat. It may be that you didn't have 45 gigs of memory left and you are hitting that memory wall even with a total of 64 gigs. Simon |
|
![]() |
![]() |
![]() |
![]() |
#6 |
New Member
Edgard Espinosa
Join Date: Jun 2009
Posts: 18
Rep Power: 17 ![]() |
Thank for the responses PSYMN.
I am meshing in Gambit2.4 and I don't have those options you suggested. Would you have any suggestions for Gambit 2.4 |
|
![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47 ![]() ![]() |
I thought you were using ICEM CFD...
for gambit, the suggestion would be similar, but the mechanics are different. first, make sure that you are using the rare 64 bit gambit with the right 64 bit Exceed, etc. Then check your mesh sizes. Make things much coarser and see where that gets you, then refine down in steps until you reach your memory limits. Simon |
|
![]() |
![]() |
![]() |
![]() |
#8 |
New Member
Edgard Espinosa
Join Date: Jun 2009
Posts: 18
Rep Power: 17 ![]() |
I checked the quality of my mesh. It seems to be pretty good, I have 677664 elements only on the surface. I have the installed 64bit Gambit and I am running a 2.33Ghz with 16GB of RAM. I am pretty confident it can handle the generation of the volume mesh.
Please comment. |
|
![]() |
![]() |
![]() |
![]() |
#9 |
Senior Member
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47 ![]() ![]() |
Well, if it is 64 bit and you think the mesh is coarse enough, then I am not sure. Perhaps it is time for someone else to comment or to contact Tech support (1 800 937 3321)
|
|
![]() |
![]() |
![]() |
![]() |
#10 |
New Member
TSK
Join Date: Oct 2010
Posts: 1
Rep Power: 0 ![]() |
me too facing the same prob. me using 32bit, 3GHz, 4 GB ram system.. if i am giving spacing as 5 it is meshing. lesser than 5 spacing it is giving the same erroe as dynamic memory is less. but i want more finer mesh (1 spacing).. what i must do.. any solution..?
|
|
![]() |
![]() |
![]() |
![]() |
#11 |
Senior Member
AB
Join Date: Sep 2009
Location: France
Posts: 323
Rep Power: 22 ![]() |
You should buy a new computer !
As Simon said, you are memory-limited with the 32 bits system. Or try to reduce the number of elements in some parts, and increase it in other parts in order to refine the mesh where you really need to. |
|
![]() |
![]() |
![]() |
![]() |
#12 |
New Member
Join Date: Oct 2010
Location: Germany
Posts: 25
Rep Power: 15 ![]() |
Hello everybody,
One general suggestion about the maximum mesh size limited by computer hardware or software (32-bit architecture): if using Windows system, you should go to Task Manager and check RAM requirement during mesh processing. For ICEM hexa, the process will be called " med ", for tetra - probably in a different way, but you should be able to recognize aggressively acting process. If you are using 32bit system, you are usually limited somewhere in between 2 or 3Gb of RAM (does not matter how much do you have installed). There is no exact practical limit for 32bit (in theory, it is exact) system and real maximum value can not usually be more then 3Gb. If you faced this problem and your meshing process failing when it is achieving 2-3Gb of RAM, then reduce the number of cells increasing the cell size. Just check what is the maximum RAM allocation for the process and you can calculate how much memory do you need for each 1000 cells. Just know the limit of your computer. If my computer can not work with DNS simulations, I am not going to try to buy a new one which could... The second point is: usually (for the most of cases), you need more memory to make a simulation in comparison to meshing process. In general, one can use a Swap file, but it will not decrease the computational time... Regards, DST |
|
![]() |
![]() |
![]() |
![]() |
#13 |
Senior Member
AB
Join Date: Sep 2009
Location: France
Posts: 323
Rep Power: 22 ![]() |
Another way could be to use the batch mode of ICEM, which requires less memory.
P.S: About buying a new computer, it was a joke ![]() ![]() |
|
![]() |
![]() |
![]() |
![]() |
#14 |
New Member
Join Date: Oct 2010
Location: Germany
Posts: 25
Rep Power: 15 ![]() |
Yeah, of course - I was also joking concerning the DNS. But still, I hope I will able to do that someday...
One question concerning ICEM batch: how much memory does it saves (just approximately)? Quite interesting, because I didn't try it before. |
|
![]() |
![]() |
![]() |
![]() |
#15 |
Senior Member
AB
Join Date: Sep 2009
Location: France
Posts: 323
Rep Power: 22 ![]() |
Maybe in 10-20 years we would be able to run DNS simulations !
About the batch mode, it saves at least 1 Gb of RAM, sometimes more. Very usefull when you want to create a big mesh and smooth it. One example: 1) if you do a lot of operations such as create mesh, check mesh, delete elements, etc.. and save mesh, ICEM would use 8 Gb of RAM (just as an example). 2) But if you just open the final mesh, it would use 5 Gb of RAM. I thought that ICEM opened different modules when he did all the operations, and those modules used a certain amount of RAM. At the end of these operations, the modules kept using that memory. 3) The batch mode avoid that issue I think. Maybe Simon could tell us more about that. |
|
![]() |
![]() |
![]() |
![]() |
#16 |
Senior Member
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47 ![]() ![]() |
What Alexandre is talking about is probably just the undo buffer filling up... This gets really bad for operations like "convert tet to hex" or "smooth" because it essentially saves the before location for every node of your mesh... This happens for every edit operation, but global operations really affect a lot more nodes. We added an option to 13.0 to clear the undo memory, along with options to exclude large operations and even an option to not clear the undo buffer when you save.
Batch does not have an undo buffer to worry about. However Batch should also use less memory just because it doesn't have to load the mesh into memory at all. This savings would be proportional to the model size. ICEM CFD was originally written to be used in Batch and many of our customers do most of their work with batch scripts created years earlier. Best regards, Simon |
|
![]() |
![]() |
![]() |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Cannot allocate memory for arrays (1400,1000) | Quarkz | Main CFD Forum | 5 | January 27, 2008 06:38 |
Gambit unable to allocate dynamic memory | Abhijeet Karnik | FLUENT | 0 | October 2, 2006 12:59 |
CFX CPU time & real time | Nick Strantzias | CFX | 8 | July 23, 2006 17:50 |
Proam ERROR:Could not allocate more memory | Erika | Siemens | 10 | November 16, 2004 20:42 |
dynamic memory allocation in C++ | m. malik | Main CFD Forum | 13 | September 12, 2002 06:52 |