I will be running a very large problem (15 million node) with CFX 10.0

For the problem size indicated above, how much RAM is required to run the programs fluidly and the solver in a reasonable amount of time? How many partitions should be used, given that I have a network of 2GB machines?




The first limit you would hit for this size of problem is the partitioning limit. Partitioning is a serial process, so your host machine has to have enough memory to do it. With normal Metis partitioning, you will be limited to 5-8 million node problems. If you use Recursive Coordinate Bisection partitioning, your 2 GB machine should be enough to do it. Another option would be to partition the problem on a 64-bit machine with more memory and take the partition file back to the 2GB machines.

Once you get to running the solver in parallel, you need to be sure that the load on each partition does not force the solver to go into swap space instead of just core memory. The maximum number of nodes per partition, assuming a limit of 2GB of memory, is about 300-500 Knodes per partition, assuming a tetrahedral mesh and single phase calculation. So, a minimum of 20 machines would be required to run a 15 million node problem efficiently.

It is important to make sure that all partitions are balanced in terms of number of nodes/elements and the physics being solved. There are cases where this is hard to accomplish, for example for conjugate heat transfer problems.

A good rule of thumb for deciding how many partitions to use is to have no fewer than 50,000 nodes and no more than 500,000 nodes per partition.





Show Form
No comments yet. Be the first to add a comment!