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

A problem about the image size

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 8, 2005, 23:41
Default A problem about the image size
  #1
alex
Guest
 
Posts: n/a
Recently, I had to run a large code(3D), and open several big arrays, which results in the warning saying "total image size ***exceeds max (268435456); image may not run". Perhaps there is someplace to reset the upper limit of the image size. I'm really worry about that. Are there any friends offering ideas and operations? BTW: I use Fortran Powerstation.

Thank you very much.
  Reply With Quote

Old   September 9, 2005, 05:36
Default Re: A problem about the image size
  #2
buch
Guest
 
Posts: n/a
Hi,

These messages appear because some versions of operating systems (such as windows 98) do not support executables bigger than 256Mb.

Not a big deal ...

  Reply With Quote

Old   September 9, 2005, 06:06
Default Re: A problem about the image size
  #3
alex
Guest
 
Posts: n/a
but some guys said that we can reset the parameters in the powerstation complier. I'm really worry about this problem because I can hardly do anything about this.
  Reply With Quote

Old   September 9, 2005, 08:47
Default Re: A problem about the image size
  #4
buch
Guest
 
Posts: n/a
Well, if you use W98, you can still upgrade your OS to W2K or XP ...

You may also switch off this kind of warnings in your compiler.

Anyway, the message is that the image MAY not run. And I promise you, if the executable is really that big for the OS, it would not iterate at all ...

So if it runs smoothly, I would not care that much about that !

Good luck
  Reply With Quote

Old   September 9, 2005, 11:17
Default Re: A problem about the image size
  #5
Renato N. Elias
Guest
 
Posts: n/a
Change the static memory allocation of your code by dynamic allocation in order to allow your program define the memory requirements at run time.

STATIC ALLOCATION: (F77 limitation)

real*8, dimension(10000000000) :: a ! huge vector

DYNAMIC ALLOCATION: (F90 feature)

real*8, allocatable :: a(

n=10000000000

allocate(a(n))

the problem certainly will disapear.

cheers

Renato N. Elias

  Reply With Quote

Old   September 9, 2005, 11:59
Default Re: A problem about the image size
  #6
Guillaume
Guest
 
Posts: n/a
You should have a flag to change the stack size like /stack:20000000 (you may have to supress some journal files from the previous compilation).
  Reply With Quote

Old   September 9, 2005, 22:28
Default Re: A problem about the image size
  #7
alex
Guest
 
Posts: n/a
Thanks a lot! But there are many arrays appear in the "common" zone. Can this type of defination also be used in the "common" defination?
  Reply With Quote

Old   September 9, 2005, 22:31
Default Re: A problem about the image size
  #8
alex
Guest
 
Posts: n/a
thanks a lot! Could you explain more about this operation? I'm just a fortran learner. Does this only need to change the set of static allocation other than dynamic allocation?
  Reply With Quote

Old   September 9, 2005, 22:32
Default Re: A problem about the image size
  #9
alex
Guest
 
Posts: n/a
I use W2K, and it still cannot run. Anyway, thank you very much.
  Reply With Quote

Old   September 10, 2005, 12:58
Default Re: A problem about the image size
  #10
Renato N. Elias
Guest
 
Posts: n/a
Good question... I have checked in the Compaq's Visual Fortran manual where is written:

"An allocatable array cannot be specified in a COMMON, EQUIVALENCE, DATA, or NAMELIST statement"

I'm used to write allocatable arrays inside modules. The module is a new feature of F90 that substitutes the use of commom blocks, for example:

c............................................

module MyParameters

real*8, allocatable :: myarray(:,

end module

c............................................

Program Foo

use MyParameters

n=1000000

allocate(myarray(n))

end program

You should consider the possibility of changing your common blocks and static arrays by modules and dynamic arrays because they are very flexible to use and they could speedup the implementation, modification as well as maintenance of your code.

cheers

Renato N. Elias
  Reply With Quote

Old   September 14, 2005, 14:56
Default Re: A problem about the image size
  #11
Guillaume
Guest
 
Posts: n/a
You have to take a look on the documentation of your compiler. You will find the syntax for the stack. If you compiler has a UGI, you have to input this option in a dialogue box. If it is a command line, this option is passed on the line when you ask for the compilation.
  Reply With Quote

Reply


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 Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Gmsh] discretizer - gmshToFoam Andyjoe OpenFOAM Meshing & Mesh Conversion 13 March 14, 2012 04:35
Gambit Problem Size Function El Wastl ANSYS Meshing & Geometry 12 April 15, 2011 07:17
ICEM Tetra mesh, Size reduction and Skewness problem Catthan ANSYS Meshing & Geometry 6 December 5, 2010 19:39
Problems in compiling paraview in Suse 10.3 platform chiven OpenFOAM Installation 3 December 1, 2009 07:21
[Commercial meshers] ST_Malloc: out of memory.malloc_storage: unable to malloc Velocity SA, cfdproject OpenFOAM Meshing & Mesh Conversion 0 April 14, 2009 15:45


All times are GMT -4. The time now is 15:24.