CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > CFX

2 Gb max?

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   August 16, 2002, 08:54
Default 2 Gb max?
  #1
jvk
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
  Reply With Quote

Old   August 16, 2002, 10:29
Default Re: 2 Gb max?
  #2
Robin
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
  Reply With Quote

Old   August 16, 2002, 12:47
Default Re: 2 Gb max?
  #3
JvK
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
  Reply With Quote

Old   August 16, 2002, 13:11
Default Re: 2 Gb max?
  #4
Robin
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
  Reply With Quote

Old   August 19, 2002, 08:46
Default Re: 2 Gb max?
  #5
Bart Prast
Guest
 
Posts: n/a
Robin,

how does the license manager deal with this? Is it limited by the number of processors or partitions?
  Reply With Quote

Old   August 19, 2002, 09:05
Default Re: 2 Gb max?
  #6
Robin
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
  Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


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 22: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 19:07


All times are GMT -4. The time now is 02:57.