|
[Sponsors] |
August 16, 2002, 08:54 |
2 Gb max?
|
#1 |
Guest
Posts: n/a
|
Is it true that the 32 bit solver is limited to 2 Gb RAM? When I run a parallel job, is 2 Gb the maximum memory for the WHOLE problem, or the maximum PER SOLVERNODE? Best regards,
Jaap van Kampen |
|
August 16, 2002, 10:29 |
Re: 2 Gb max?
|
#2 |
Guest
Posts: n/a
|
Hi Jaap,
Firstly, the limit is operating system dependent and stems from what type of integer can be sent to the memory allocation routine, malloc(). If the OS allows a 32 bit unsigned integer, then the limit is 2^32 bytes, thus 4 GB. If the OS only allows a 32 signed integer, then the limit is 2^31 (since one bit is used for the sign of the integer), and the limit is then 2 GB. Windows and Linux both take 32 bit signed integers into malloc(), thus the limit is 2 GB per array on this platform. Secondly, the limit is per array. Typically, the REAL array is the largest, followed by the INTEGER array. So if a 32 bit signed integer is required by malloc(), the overall memory limit is closer to 4 GB. It probably won't be exactly this, since your are not likely to require as much INTEGER space as REAL. A 64 bit system is another story, theoretically providing up to 2^64 bytes of RAM! If you want to test your system, compile and run the following C code: #include <stdio.h> #include <malloc.h> void main (argc, argv) int argc; char *argv[]; { int totalsize; int *iz; totalsize = 2^30; while(1) { iz = NULL; iz = malloc(totalsize); if( iz != NULL) { printf("Memory allocated, %d Mbytes\n",totalsize/(1024*1024)); totalsize = totalsize + 2^27; free(iz); } else { printf("FAILED: Memory not allocated, %d Mbytes\n",totalsize/(2^20)); return; } } } Regards, Robin |
|
August 16, 2002, 12:47 |
Re: 2 Gb max?
|
#3 |
Guest
Posts: n/a
|
Thanks for your thorough respons Robin! As I understand it, I can just increase my number of partitions (which do not necessarly have to be equal to the number of processors) when I have memory problems?
Regards, Jaap |
|
August 16, 2002, 13:11 |
Re: 2 Gb max?
|
#4 |
Guest
Posts: n/a
|
Hi Jaap,
You're welcome. Yes. If you do run into memory limits, increasing the number of partitions will help and these do not have to be equal to the number of processors. Robin |
|
August 19, 2002, 08:46 |
Re: 2 Gb max?
|
#5 |
Guest
Posts: n/a
|
Robin,
how does the license manager deal with this? Is it limited by the number of processors or partitions? |
|
August 19, 2002, 09:05 |
Re: 2 Gb max?
|
#6 |
Guest
Posts: n/a
|
Hi Bart,
Licenses are requested by the master process. In order to run in parallel, you will require an additional parallel increment for each partition. There is no limit to the number of parallels one may use (I have seen up to 512). Robin |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Force can not converge | colopolo | CFX | 13 | October 4, 2011 22:03 |
Upgraded from Karmic Koala 9.10 to Lucid Lynx10.04.3 | bookie56 | OpenFOAM Installation | 8 | August 13, 2011 04:03 |
On the damBreak4phaseFine cases | paean | OpenFOAM Running, Solving & CFD | 0 | November 14, 2008 21:14 |
IcoFoam parallel woes | msrinath80 | OpenFOAM Running, Solving & CFD | 9 | July 22, 2007 02:58 |
Could anybody help me see this error and give help | liugx212 | OpenFOAM Running, Solving & CFD | 3 | January 4, 2006 18:07 |