|
[Sponsors] |
Considerations about memory consuption in CFX |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
November 8, 2009, 10:59 |
Considerations about memory consuption in CFX
|
#1 |
Member
Lukasz
Join Date: Mar 2009
Posts: 67
Rep Power: 17 |
Hi all,
Last time I had to rapidly jump into a much bigger simulations than I was performing before. Because of that I started to more carefully consider things related to memory and resources consumptions depending on mesh. I would be very gratefull if some more experienced users can justify if this thinking manner is right: 1) CFX is node based soft. Because of that given geometry (f.e. car body) is represented more "accurately" by mesh of higher number of nodes but not higher number of elements. 2) The mesh of higher number of nodes consumes more CPU resources than mesh of smaller number of nodes, but for 2 meshes of the same number of nodes this one with higher number of elements also consumes more CPU time 3) (most important): there is a statement in manual, that for hex and quad meshes with the same number of nodes the memory consumption is about two times higher for quad mesh. Does it mean that memory consuption depends on number of elements not number of nodes? Does it depend on both? 4) So, after all, for a given geometry it is better to use hex mesh, because for the same number of elements as quad mesh (what limits the memory consumption) the hex one has far higher number of nodes what represent the surface more accurately? True of False? I neglect all the numerics about higher robustness and faster convergence of hex and so on... I would be very gratefull is some more experienced users (in big models especially) could comment on this. Luk |
|
November 8, 2009, 17:48 |
|
#2 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,854
Rep Power: 144 |
CFX is a node based solver. All that means is the variable values are stored at the node locations, and the control volumes are constructed around the nodes. I have no idea what you mean by your point 1.
On your point 2, the primary consideration for memory use is the number of nodes. Then a second order effect is the element types, and for a given number of nodes a hex mesh will have less memory useage than a tet mesh. I have no idea what you mean by quad meshes in CFX. CFX does not support 2D elements. So, yes, if you can hex mesh a geometry you will probably use less memory than the equivalent tet mesh. But keep in mind that computer memory is cheap these days and it is often easier to buy more memory or go distributed parallel than to reduce memory consumption. |
|
November 8, 2009, 18:49 |
|
#3 |
Member
Lukasz
Join Date: Mar 2009
Posts: 67
Rep Power: 17 |
Hi,
Of course, I was thinking about tetra (3D) not quads (2D). My idea was to compare tetra and hex meshes from the point of view of comparing memory consumption achieving as accurate geometry representation as possible. The theory states that ratio of elements/nodes for tetra is approximately 5:1 while for pure hexa is 1:1. My problem is what really "represents" the geometry: elements or nodes? It is a question if You have limited memory amount: if geometry is represented by elements than (neglecting other factors) You can easily produce tetra mesh which would have five time less nodes and consumes less CPU. But I suspect, that in CFX which is node based the more nodes on surface the better is its representation. With this, since memory consumption is growing with rising number of elements it is better to use hexa mesh, because it has less elements (memory consumption) with the same number of nodes. And - in the end, the memory is relatively cheap, right. But I am hitting the upper limit of RAM possible to mount on motherboard and, in fact I must buy new system If I like to expand. Luk |
|
November 8, 2009, 22:23 |
|
#4 | |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,854
Rep Power: 144 |
Quote:
I cannot see where you are going with this line of thought. A finite volume based solver has to be either node or element based, and a given mesh could be used in either a node or element based solver. Comparing node and element based solvers is meaningless until you do a proper mesh size (and all the other factors) sensitivity analysis, and then you may find that one solver may need a finer mesh than the other to achieve the same level of mesh convergence. |
||
November 9, 2009, 03:57 |
|
#5 |
Member
Lukasz
Join Date: Mar 2009
Posts: 67
Rep Power: 17 |
Hi,
Of course that I cannot produce nodes without elements and elements without nodes but the problem is that for different meshes You have different ratios of nodes/elements. If the solver is node based than, as You said it builds control volumes around nodes - in other words solves the equations at nodes (more or less). In my understanding, taking this, and considering the fact that also number of elements influences memory consumption than, from the point of RAM resources it could be advantageous to produce meshes with highest number of nodes and smallest possible number of elements. Such situation occures in hexa. Am I right? Thanks for fruitfull discussion, Luk |
|
November 9, 2009, 05:43 |
|
#6 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,854
Rep Power: 144 |
Yes, you are correct. For a given number of nodes a hex mesh will use less memory than a tet mesh. So, everything else being equal, you would choose a hex mesh in preference to a tet mesh.
|
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
CFX Run out of memory | Lucas | CFX | 0 | January 22, 2009 20:42 |
CFX Solver Memory Error | mike | CFX | 1 | March 19, 2008 08:22 |
Available memory is less than 2GB in CFX 5.7.1 | Korsh Mik | CFX | 3 | June 5, 2005 20:34 |
CFX 5.6 memory problem with solver | sreevisakh | CFX | 3 | February 2, 2004 05:57 |
CFX 4.4 installation problem | Pandu Sattvika | CFX | 1 | December 1, 2001 05:07 |