CFD Online Discussion Forums

CFD Online Discussion Forums (
-   ANSYS Meshing & Geometry (
-   -   ERROR: Unable to allocate 45256392 bytes of dynamic memory. (

eespi002 July 20, 2009 09:09

ERROR: Unable to allocate 45256392 bytes of dynamic memory.

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?

PSYMN July 20, 2009 15:26

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.

eespi002 July 20, 2009 15:53

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?

PSYMN July 20, 2009 17:01

Sorry, not sure then.
There must be something else, sorry I don't know what it is.

Do you have access to tech support? or 1-800-937-3321 (in the USA/Canada).

PSYMN July 20, 2009 17:06

Previous suggestion still holds..
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.


eespi002 July 21, 2009 12:16

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

PSYMN July 21, 2009 16: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.


eespi002 July 22, 2009 16:14

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.

PSYMN July 23, 2009 09:00

Sorry, not sure then.
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)

sasikirantallam October 26, 2010 07:10

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..?

BrolY October 26, 2010 07:45

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.

dst October 26, 2010 09:42

32 bit limitation
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...


BrolY October 26, 2010 09:55

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 ;) But if you want to run a DNS simulation, you should buy a cluster ;)

dst October 26, 2010 10:12

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.

BrolY October 26, 2010 11:04

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.

PSYMN October 27, 2010 13:38

Undo Buffer
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,


All times are GMT -4. The time now is 19:26.